void FUN_00433604(int param_1,uint param_2,uint param_3,undefined4 param_4,undefined4 param_5)

{
  int iVar1;
  uint uVar2;
  int iVar3;
  
  iVar1 = FUN_0043276c();
  uVar2 = *(int *)(iVar1 + 0x184) + 1U & 0x8000000f;
  if ((int)uVar2 < 0) {
    uVar2 = (uVar2 - 1 | 0xfffffff0) + 1;
  }
  *(uint *)(iVar1 + 0x184) = uVar2;
  if (uVar2 == *(uint *)(iVar1 + 0x188)) {
    uVar2 = uVar2 + 1 & 0x8000000f;
    if ((int)uVar2 < 0) {
      uVar2 = (uVar2 - 1 | 0xfffffff0) + 1;
    }
    *(uint *)(iVar1 + 0x188) = uVar2;
    uVar2 = *(uint *)(iVar1 + 0x184);
  }
  *(uint *)(iVar1 + (uVar2 + 0x10) * 4 + 4) =
       (param_2 & 0xfff) << 0xc | param_3 & 0xfff | param_1 << 0x18;
  iVar3 = *(int *)(iVar1 + (uVar2 + 0x20) * 4 + 4);
  *(undefined4 *)(iVar1 + (uVar2 + 0x40) * 4 + 4) = param_4;
  *(undefined4 *)(iVar1 + (uVar2 + 0x50) * 4 + 4) = param_5;
  *(undefined4 *)(iVar1 + uVar2 * 4 + 4) = 0;
  if ((iVar3 != 0) && ((*(uint *)(iVar1 + (uVar2 + 0x30) * 4 + 4) & 1) != 0)) {
    FUN_0043a484();
    uVar2 = *(uint *)(iVar1 + 0x184);
    *(undefined4 *)(iVar1 + (uVar2 + 0x20) * 4 + 4) = 0;
  }
  *(undefined4 *)(iVar1 + (uVar2 + 0x30) * 4 + 4) = 0;
  return;
}