Function at 0x4ba650
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x4b4
mov eax, dword [0x708598]
push ebx
push esi
mov esi, 5
cmp eax, esi
push edi
mov ebx, ecx
jne 0x4ba695
mov eax, 0x719a18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ba677
sub eax, edx
mov dword [esp + 0x1c], eax
je 0x4ba695
mov ecx, dword [ebx + 0x49d8]
test ecx, ecx
je 0x4ba695
call fcn.004c4ae0
mov eax, dword [ebx + 0x49c4]
test eax, eax
jne 0x4ba6c3
cmp dword [0x708598], esi
jne 0x4ba6c3
mov eax, 0x719a18
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ba6b0
sub eax, edx
mov dword [esp + 0x1c], eax
jne 0x4bb8d0
lea eax, [esp + 0x28]
push eax
push 0x22094d4
push 0x22094c8
mov ecx, 0x2209408
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0x3f800000
mov dword [esp + 0x3c], 0
call fcn.00542560
mov ecx, dword [0x22094c8]
mov edx, dword [0x22094cc]
mov eax, dword [0x22094d0]
mov dword [0x220e060], ecx
mov ecx, dword [0x22094d4]
mov dword [0x220e064], edx
mov edx, dword [0x22094d8]
mov dword [0x220e068], eax
mov eax, dword [0x22094dc]
mov dword [0x220e06c], ecx
mov ecx, dword [0x22094e0]
mov dword [0x220e070], edx
mov edx, dword [0x22094e4]
mov dword [0x220e074], eax
mov eax, dword [0x22094e8]
push 0x220e060
mov dword [0x220e078], ecx
mov dword [0x220e07c], edx
mov dword [0x220e080], eax
call fcn.005a7030
add esp, 4
mov ecx, 0x220e060
call fcn.005ace00
mov ecx, 0x220e060
call fcn.005acd00
mov ecx, 0x2209408
call fcn.00542bf0
mov ecx, dword [0x7191d4]
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
jne 0x4ba7b2
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, 0x71d0f0
call fcn.00447ef0
mov eax, dword [0x70859c]
mov ecx, dword [0x7085a0]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x6f
mov dword [esp + 0xc], eax
mov eax, ecx
fild dword [esp + 0xc]
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
fstp dword [esp + 0x20]
sub ecx, eax
sub ecx, 0x114
mov dword [esp + 0xc], ecx
mov ecx, dword [0x7191d4]
test ecx, ecx
fild dword [esp + 0xc]
fstp dword [esp + 0x10]
je 0x4ba822
mov edx, dword [ecx]
push 0x17
call dword [edx + 4]
test al, al
je 0x4ba81c
mov eax, dword [0x7198dc]
test eax, eax
jle 0x4ba81c
fld dword [esp + 0x10]
fadd dword [0x6bb634]
fstp dword [esp + 0x10]
mov ecx, dword [0x7191d4]
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4bb045
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0x1b
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 4
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 4
push 1
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 2
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 3
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov edx, dword [0x7085b4]
push 0x47c35000
push 0x41200000
push edx
mov ecx, 0x2209408
call fcn.00542440
fld dword [0x220e060]
fld dword [0x220e064]
mov eax, dword [0x220e068]
mov ecx, dword [0x220e06c]
mov edx, dword [0x220e070]
mov dword [esp + 0x38], ecx
fld dword [esp + 0x38]
fsub st(2)
mov dword [esp + 0x3c], edx
mov dword [esp + 0x30], eax
mov eax, dword [0x220e074]
fstp dword [esp + 0x90]
mov dword [esp + 0x40], eax
fld dword [esp + 0x3c]
lea ecx, [esp + 0x90]
fsub st(1)
push ecx
mov edx, ecx
push edx
fstp dword [esp + 0x9c]
fstp st(0)
fstp st(0)
fld dword [esp + 0x48]
fsub dword [esp + 0x38]
fstp dword [esp + 0xa0]
call fcn.005e40eb
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 7
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0xe
push eax
call dword [ecx + 0xe4]
fld dword [esp + 0x90]
fmul dword [0x6c2270]
push 0
push 0
push 0
fstp dword [esp + 0x50]
lea edx, [esp + 0x5c]
fld dword [esp + 0xa0]
push edx
fmul dword [0x6c2270]
fstp dword [esp + 0x58]
fld dword [esp + 0xa8]
fmul dword [0x6c2270]
fstp dword [esp + 0x5c]
call fcn.005e574f
fld dword [esp + 0x44]
mov eax, dword [esp + 0x4c]
fsub dword [0x6bb638]
mov dword [esp + 0x30], eax
fst dword [esp + 0x28]
fld dword [esp + 0x48]
fsub dword [0x6bb768]
fst dword [esp + 0x2c]
fxch st(1)
fstp dword [esp + 0xb4]
fld dword [esp + 0x48]
mov edx, eax
fadd dword [0x6bb768]
mov ecx, eax
mov dword [esp + 0xa4], edx
mov dword [esp + 0xb0], edx
fst dword [esp + 0x14]
lea edx, [esp + 0x50]
fstp dword [esp + 0xb8]
mov dword [esp + 0xbc], ecx
fld dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
fadd dword [0x6bb638]
push edx
push 0x100
mov dword [esp + 0xb4], ecx
fst dword [esp + 0x14]
mov eax, dword [esp + 0x14]
fstp dword [esp + 0xa4]
mov dword [esp + 0xb0], eax
mov eax, dword [0x2209400]
fstp dword [esp + 0xa8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0xf
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov edx, dword [ebx + 0x4d44]
mov eax, dword [edx + 4]
mov edx, dword [esp + 0xa8]
push eax
mov eax, dword [esp + 0xb0]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0xc0]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0xc0]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0xe4]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x64]
mov dword [ecx + 4], eax
mov eax, dword [0x2209400]
mov dword [ecx + 8], edx
push eax
mov ecx, ebx
call fcn.004b8490
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [ebx + 0x4d70]
push eax
lea ecx, [esp + 0x244]
push ecx
call fcn.005e5875
push 0xbf060a92
lea edx, [esp + 0x284]
push edx
call fcn.005e5918
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push eax
call fcn.005e574f
lea ecx, [esp + 0x280]
push ecx
lea edx, [esp + 0x244]
push edx
lea eax, [esp + 0x1c8]
push eax
call fcn.005e4db8
mov ecx, 0x10
lea esi, [esp + 0x1c0]
lea edi, [esp + 0x200]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x204]
push edx
lea eax, [esp + 0x188]
push eax
call fcn.005e4db8
mov eax, dword [0x2209400]
lea edx, [esp + 0x100]
push edx
mov ecx, 0x10
lea esi, [esp + 0x184]
lea edi, [esp + 0x104]
push 0x100
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xb0]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x16
push eax
call dword [ecx + 0xe4]
mov ecx, dword [ebx + 0x4d4c]
call fcn.004ba5f0
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
fld dword [esp + 0x84]
fadd dword [0x6bc894]
mov eax, dword [0x2209400]
fstp dword [esp + 0x84]
fld dword [esp + 0x88]
fadd dword [0x6c226c]
fstp dword [esp + 0x88]
mov ecx, dword [eax]
lea edx, [esp + 0x50]
push edx
push 0x100
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x4d5c]
call fcn.004ba5f0
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x2209748]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push ecx
push 0x22
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0x23
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 3
push 0x8c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0x30
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0x41a00000
mov edx, dword [esp + 0xc]
push edx
push 0x24
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0x43fa0000
mov edx, dword [esp + 0xc]
push edx
push 0x25
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x89
push eax
call dword [ecx + 0xe4]
mov ecx, 0x71d0f0
call fcn.00447ef0
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x2209748]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push ecx
push 0x22
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0x23
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 3
push 0x8c
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0x30
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0x41a00000
mov edx, dword [esp + 0xc]
push edx
push 0x24
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0x447a0000
mov edx, dword [esp + 0xc]
push edx
push 0x25
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov edx, dword [ebx + 0x4d74]
push edx
lea eax, [esp + 0x144]
push eax
call fcn.005e5875
fld dword [esp + 0x40]
fadd dword [0x6bc9c8]
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x48]
fsub dword [0x6bc8bc]
fstp dword [esp + 4]
fld dword [esp + 0x44]
fadd dword [0x6bca1c]
lea ecx, [esp + 0x5c]
fstp dword [esp]
push ecx
call fcn.005e574f
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0x188]
push ecx
call fcn.005e4db8
mov eax, dword [0x2209400]
mov ecx, 0x10
lea esi, [esp + 0x180]
lea edi, [esp + 0xc0]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0xc0]
push ecx
push 0x100
push eax
call dword [edx + 0xb0]
mov eax, dword [0x2209400]
fld dword [esp + 0x134]
lea ecx, [esp + 0xc0]
fsub dword [0x6bc9c8]
push ecx
push 0x100
push eax
fstp dword [esp + 0x100]
mov edx, dword [eax]
call dword [edx + 0xb0]
mov eax, dword [0x2209400]
mov edx, dword [eax]
lea ecx, [esp + 0x50]
push ecx
push 0x100
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x4d58]
call fcn.004ba5f0
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 7
push eax
call dword [edx + 0xe4]
mov ecx, dword [ebx + 0x4d6c]
test ecx, ecx
je 0x4bafda
mov eax, dword [0x2209400]
mov edx, dword [0x719a54]
push eax
push edx
call fcn.0052e0b0
mov ecx, dword [ebx + 0x4d60]
test ecx, ecx
je 0x4baff6
mov eax, dword [0x2209400]
mov edx, dword [0x719a54]
push eax
push edx
call fcn.0052e0b0
mov ecx, dword [ebx + 0x4d64]
test ecx, ecx
je 0x4bb012
mov eax, dword [0x2209400]
mov edx, dword [0x719a54]
push eax
push edx
call fcn.0052e0b0
mov ecx, dword [ebx + 0x4d68]
test ecx, ecx
je 0x4bb02e
mov eax, dword [0x2209400]
mov edx, dword [0x719a54]
push eax
push edx
call fcn.0052e0b0
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
jmp 0x4bb841
mov ecx, dword [0x7191d4]
mov edx, dword [ecx]
push 0xe
call dword [edx + 4]
test al, al
je 0x4bb841
mov eax, dword [0x7085b4]
push 0x49742400
push 0x3dcccccd
push eax
mov ecx, 0x2209408
call fcn.00542440
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push esi
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 6
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 7
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x89
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0x16
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0x142
push eax
call dword [ecx + 0x164]
push 0x44480000
push 0x44bb8000
push 0
lea edx, [esp + 0x5c]
push edx
call fcn.005e574f
mov eax, dword [0x2209400]
mov ecx, dword [eax]
lea edx, [esp + 0x50]
push edx
push 0x100
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x49f8]
push 0
call fcn.0053dc50
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0x18
mov edx, dword [ebx + 0x49dc]
push 0
push edx
push 0
push eax
call dword [ecx + 0x190]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4bb8d0
push 0x44160000
push 0x44228000
push 0x42c80000
lea edx, [esp + 0x5c]
push edx
call fcn.005e574f
mov eax, dword [ebx + 0x4a10]
push eax
lea ecx, [esp + 0x104]
push ecx
call fcn.005e5875
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x104]
push eax
lea ecx, [esp + 0x148]
push ecx
call fcn.005e4db8
mov eax, dword [0x2209400]
mov ecx, 0x10
lea esi, [esp + 0x140]
lea edi, [esp + 0xc0]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0xc0]
push ecx
push 0x100
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x49e0]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0x18
push 0
push ecx
push 0
push eax
call dword [edx + 0x190]
mov ecx, dword [ebx + 0x49f0]
push 0
call fcn.0053dc50
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 0
push 6
push eax
call dword [edx + 0x144]
test eax, eax
jl 0x4bb8d0
push 0x3fc90fdb
lea eax, [esp + 0x104]
push eax
call fcn.005e57d3
push 0x44fa0000
push 0x44160000
push 0
lea ecx, [esp + 0x5c]
push ecx
call fcn.005e574f
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x104]
push eax
lea ecx, [esp + 0x148]
push ecx
call fcn.005e4db8
mov eax, dword [0x2209400]
push 0x18
mov ecx, 0x10
lea esi, [esp + 0x144]
lea edi, [esp + 0xc4]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x49e8]
mov edx, dword [eax]
push 0
push ecx
push 0
push eax
call dword [edx + 0x190]
mov eax, dword [0x2209400]
mov edx, dword [eax]
lea ecx, [esp + 0xc0]
push ecx
push 0x100
push eax
call dword [edx + 0xb0]
mov ecx, dword [ebx + 0x49f4]
push 0
call fcn.0053dc50
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 0
push 6
push eax
call dword [edx + 0x144]
test eax, eax
jl 0x4bb8d0
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 6
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 3
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 5
push 1
push 0
push eax
call dword [edx + 0x10c]
lea eax, [ebx + 0x4c74]
lea ecx, [ebx + 0x4cc4]
mov dword [esp + 0xc], 0
mov dword [esp + 0x24], eax
mov dword [esp + 0x14], ecx
lea esp, [esp]
mov esi, dword [esp + 0x24]
fld dword [esi]
fcomp dword [0x6be7f4]
fnstsw ax
test ah, 0x41
jne 0x4bb454
fld dword [0x719a54]
fmul dword [0x6bca1c]
fsubr dword [esi]
fst dword [esp + 0x18]
fstp dword [esi]
fld dword [esp + 0x18]
fcomp dword [0x6c2268]
fnstsw ax
test ah, 5
jp 0x4bb3d6
fld dword [esp + 0x18]
fcomp dword [0x6bca00]
fnstsw ax
test ah, 0x41
jne 0x4bb3d6
call fcn.005cdacd
and eax, reloc.ijl15.dll_Ordinal_3
jns 0x4bb409
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4bb51a
fld dword [esp + 0x18]
fcomp dword [0x6c2264]
fnstsw ax
test ah, 5
jp 0x4bb411
fld dword [esp + 0x18]
fcomp dword [0x6bc860]
fnstsw ax
test ah, 0x41
jne 0x4bb411
call fcn.005cdacd
and eax, reloc.ijl15.dll_Ordinal_3
jns 0x4bb409
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4bb51a
fld dword [esp + 0x18]
fcomp dword [0x6c2260]
fnstsw ax
test ah, 5
jp 0x4bb51a
fld dword [esp + 0x18]
fcomp dword [0x6bca18]
fnstsw ax
test ah, 0x41
jne 0x4bb51a
call fcn.005cdacd
and eax, reloc.ijl15.dll_Ordinal_3
jns 0x4bb409
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
jmp 0x4bb51a
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
sub eax, dword [ebx + 0x4c70]
cmp eax, 0x5dc
jbe 0x4bb51a
mov dword [esi], 0x3f800000
call fcn.005cdacd
and eax, reloc.ijl15.dll_Ordinal_3
jns 0x4bb484
dec eax
or eax, 0xfffffffc
inc eax
mov dword [esi + 0x28], eax
call fcn.005cdacd
cdq
mov ecx, 0x7d0
idiv ecx
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
fstp dword [esp + 0x1c]
call fcn.005cdacd
cdq
mov ecx, 0x5dc
idiv ecx
mov dword [esp + 0x2c], 0
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
mov edx, dword [esp + 0x14]
fld dword [0x220e060]
fsub dword [0x6bb610]
fadd dword [esp + 0x1c]
fstp dword [esp + 0x28]
mov eax, dword [esp + 0x28]
fadd dword [0x220e068]
mov dword [edx], eax
mov dword [edx + 4], ecx
fadd dword [0x6c225c]
fstp dword [esp + 0x30]
mov eax, dword [esp + 0x30]
mov dword [edx + 8], eax
call fcn.005cdacd
cdq
mov ecx, 0x3e8
idiv ecx
mov eax, edx
mov dword [esp + 0x1c], eax
call edi
mov ecx, dword [esp + 0x1c]
sub eax, ecx
mov dword [ebx + 0x4c70], eax
fld dword [esi]
fcomp dword [0x6be7f4]
fnstsw ax
test ah, 0x41
jne 0x4bb640
push 0x3fc90fdb
lea edx, [esp + 0x104]
push edx
call fcn.005e57d3
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 8]
mov edx, dword [eax]
push ecx
push 0x443b8000
push edx
lea eax, [esp + 0x5c]
push eax
call fcn.005e574f
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx + 0x28]
cmp eax, 3
ja case.default.0x4bb565
jmp dword [eax*4 + 0x4bc3ac]
mov ecx, dword [ebx + 0x4a00]
jmp 0x4bb58a
mov ecx, dword [ebx + 0x4a04]
jmp 0x4bb58a
mov ecx, dword [ebx + 0x4a08]
jmp 0x4bb58a
mov ecx, dword [ebx + 0x4a0c]
push 0
call fcn.0053dc50
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x104]
push eax
lea ecx, [esp + 0x148]
push ecx
call fcn.005e4db8
mov eax, dword [0x2209400]
mov ecx, 0x10
lea esi, [esp + 0x140]
lea edi, [esp + 0xc0]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
lea ecx, [esp + 0xc0]
push ecx
push 0x100
push eax
call dword [edx + 0xb0]
mov edx, dword [esp + 0x24]
mov esi, dword [0x2209400]
fld dword [edx]
mov edi, dword [esi]
fmul dword [0x6bc8c4]
call fcn.005cd414
movzx eax, al
shl eax, 0x18
or eax, 0xffffff
push eax
push 0x3c
push esi
call dword [edi + 0xe4]
mov edx, dword [ebx + 0x49e4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0x18
push 0
push edx
push 0
push eax
call dword [ecx + 0x190]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4bb8d0
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
inc eax
add esi, 4
add edx, 0xc
cmp eax, 3
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x14], edx
jl 0x4bb370
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 5
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 2
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 4
push 1
push 0
push eax
call dword [ecx + 0x10c]
lea edx, [ebx + 0x4a14]
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], edx
lea ebx, [ebx]
mov eax, dword [ebx + 0x4c6c]
push eax
lea ecx, [esp + 0x144]
push ecx
call fcn.005e5875
push 0x3fc90fdb
lea edx, [esp + 0x104]
push edx
call fcn.005e57d3
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push 0xc0a00000
push ecx
push edx
lea eax, [esp + 0x5c]
push eax
call fcn.005e574f
lea ecx, [esp + 0x100]
push ecx
lea edx, [esp + 0x144]
push edx
lea eax, [esp + 0x188]
push eax
call fcn.005e4db8
mov ecx, 0x10
lea esi, [esp + 0x180]
lea edi, [esp + 0x200]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x204]
push edx
lea eax, [esp + 0x1c8]
push eax
call fcn.005e4db8
mov edx, dword [ebx + 0x49ec]
mov eax, dword [0x2209400]
push 0x18
push 0
push edx
mov ecx, 0x10
lea esi, [esp + 0x1cc]
lea edi, [esp + 0xcc]
push 0
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x190]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
lea edx, [esp + 0xc0]
push edx
push 0x100
push eax
call dword [ecx + 0xb0]
mov ecx, dword [ebx + 0x49fc]
push 0
call fcn.0053dc50
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 0
push 6
push eax
call dword [ecx + 0x144]
test eax, eax
jl 0x4bb8d0
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
inc eax
add edx, 0xc
cmp eax, 0x32
mov dword [esp + 0xc], eax
mov dword [esp + 0x14], edx
jl 0x4bb6d0
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 3
push 0x16
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x719874]
mov ecx, dword [0x719878]
mov edx, dword [0x7085b4]
push eax
push ecx
push edx
mov ecx, 0x2209408
call fcn.00542440
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 0x1c
push eax
call dword [ecx + 0xe4]
mov ecx, 0x2209408
call fcn.00542d40
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 5
push 0
push eax
call dword [edx + 0x114]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 0
push 6
push 0
push eax
call dword [ecx + 0x114]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 7
push 0
push eax
call dword [edx + 0x114]
cmp dword [0x708598], 2
jne 0x4bb8e1
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bb8dd
mov eax, dword [ecx]
push 0x17
call dword [eax + 4]
test al, al
je 0x4bb8dd
mov eax, dword [0x7198dc]
test eax, eax
mov eax, dword [0x70859c]
lea ecx, [ebx + 0x1ec]
cdq
jle 0x4bb8d9
push 0xffffffffffffff9c
jmp 0x4bb8fc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
jmp 0x4bb8fc
push 0
jmp 0x4bb8f0
mov eax, dword [0x7085a0]
cdq
and edx, 0xf
add eax, edx
sar eax, 4
push eax
mov eax, dword [0x70859c]
cdq
lea ecx, [ebx + 0x1ec]
sub eax, edx
sar eax, 1
sub eax, 0x100
push eax
call fcn.00549a70
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 1
push 0x1b
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 5
push 0x13
push eax
call dword [edx + 0xe4]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 6
push 0x14
push eax
call dword [ecx + 0xe4]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 4
push 4
push 0
push eax
call dword [edx + 0x10c]
mov eax, dword [0x2209400]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0x10c]
mov eax, dword [0x2209400]
mov edx, dword [eax]
push 0
push 6
push 0
push eax
call dword [edx + 0x10c]
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bba24
mov eax, dword [ecx]
push 0x17
call dword [eax + 4]
test al, al
je 0x4bba1e
mov eax, dword [ebx + 0x49c4]
test eax, eax
jne 0x4bba1e
cmp dword [0x70859c], 0x400
jl 0x4bba1e
cmp dword [0x7085a0], 0x300
jl 0x4bba1e
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bba05
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4bba05
fld dword [ebx + 0x4d7c]
fcomp dword [0x6bc8b4]
fnstsw ax
test ah, 5
jp 0x4bb9f6
mov eax, dword [ebx + 0x4d3c]
mov ecx, dword [ebx + 0x4d7c]
mov dword [eax + 0x374], ecx
mov edx, dword [0x2209400]
mov eax, dword [0x719a54]
push edx
push eax
jmp 0x4bba13
mov ecx, dword [0x2209400]
mov edx, dword [0x719a54]
push ecx
push edx
mov ecx, dword [ebx + 0x4d3c]
call fcn.00517e90
mov ecx, dword [0x7191d4]
mov eax, dword [ebx + 0x49c4]
test eax, eax
je 0x4bba3e
lea ecx, [ebx + 0x240]
call fcn.004ea5d0
jmp 0x4bc362
mov eax, dword [0x223f100]
test eax, eax
je 0x4bbf26
mov edx, dword [eax + 0x200]
test edx, edx
je 0x4bbf26
mov byte [ebx + 0x23c], 2
mov ecx, dword [0x7191d4]
mov eax, dword [ecx]
push 0x1c
call dword [eax + 4]
test al, al
je 0x4bbde5
mov eax, dword [0x70859c]
fld dword [esp + 0x10]
cdq
sub eax, edx
mov esi, eax
sar esi, 1
lea ecx, [esi - 0x2e]
mov dword [esp + 0x24], ecx
call fcn.005cd414
push eax
add esi, 0xffffff80
push esi
lea ecx, [ebx + 0x20c]
call fcn.00549a70
fld dword [esp + 0x10]
fadd dword [0x6be974]
mov eax, dword [0x223f100]
add eax, 0x230
lea edx, [eax + 1]
fstp dword [esp + 0x10]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4bbac0
sub eax, edx
mov dword [esp + 0x1c], eax
je 0x4bbaf8
fld dword [esp + 0x10]
fsub dword [0x6bc888]
call fcn.005cd414
push eax
mov eax, dword [0x70859c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x5a
push eax
lea ecx, [ebx + 0x21c]
call fcn.00549a70
mov edx, dword [0x223f100]
mov al, byte [edx + 0x207]
xor edi, edi
test al, al
jbe 0x4bbbca
lea esi, [ebx + 0x1fc]
mov dword [esp + 0x14], edi
jmp 0x4bbb20
fild dword [esp + 0x14]
fadd dword [esp + 0x10]
fst dword [esp + 0xc]
call fcn.005cd414
push eax
mov eax, dword [0x70859c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x40
push eax
mov ecx, esi
call fcn.00549a70
mov eax, dword [0x223f100]
movsx ecx, byte [eax + edi*2 + 0x209]
movsx edx, byte [eax + edi*2 + 0x208]
push ecx
push edx
lea eax, [esp + 0x30]
push str._c_c
push eax
call fcn.005cd489
add esp, 0x10
fld dword [esp + 0xc]
lea ecx, [esp + 0x28]
fadd dword [0x6bc9dc]
push ecx
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005cd414
mov edx, dword [esp + 0x3c]
push eax
push edx
mov ecx, 0x2209408
call fcn.00543d30
mov ecx, dword [esp + 0x14]
mov eax, dword [0x223f100]
add ecx, 0x16
mov dword [esp + 0x14], ecx
movzx ecx, byte [eax + 0x207]
inc edi
cmp edi, ecx
jl 0x4bbb20
push 1
mov ecx, 0x2203adc
call fcn.00532450
xor edx, edx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov ecx, 0x2203adc
mov dword [esp + 0x6c], edx
call fcn.00532dc0
push eax
movzx eax, byte [ebx + 0x19f]
lea ecx, [ebx + eax*2]
lea edx, [eax + ecx + 0x1a0]
push 0x6be170
push edx
call fcn.005cd489
mov eax, dword [0x70859c]
cdq
sub eax, edx
mov edi, eax
mov eax, dword [0x223f100]
mov cl, byte [eax + 0x207]
sar edi, 1
add edi, 0x12
add esp, 0xc
xor esi, esi
test cl, cl
mov dword [esp + 0x24], edi
jbe 0x4bbd77
lea eax, [ebx + 0x1a0]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
jmp 0x4bbc60
fild dword [esp + 0x14]
fadd dword [esp + 0x10]
fadd dword [0x6bc9dc]
call fcn.005cd414
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x18]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4bbc80
sub eax, edx
xor ecx, ecx
test eax, eax
mov dword [esp + 0x1c], eax
jle 0x4bbcb2
mov ecx, eax
mov edx, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x50]
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov edi, dword [esp + 0x24]
mov ecx, edx
movzx eax, byte [ebx + 0x19f]
cmp esi, eax
mov byte [esp + ecx + 0x50], 0
jne 0x4bbd21
fld dword [0x8655c0]
lea ecx, [esp + 0x50]
fadd dword [0x719a54]
fst dword [0x8655c0]
fcomp dword [0x6bc860]
fnstsw ax
test ah, 0x41
jne 0x4bbcf0
push ecx
push 0x6be170
mov edx, ecx
push edx
jmp 0x4bbcfb
lea eax, [esp + 0x50]
push eax
push 0x6c1670
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
fld dword [0x8655c0]
fcomp dword [0x6bc4dc]
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x4bbd21
mov dword [0x8655c0], 0
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x50]
push edx
push 0x96
push 0
push 0xff
push 0xff
push 0xff
push eax
push edi
mov ecx, 0x2209408
call fcn.00543d30
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
add eax, 3
add ecx, 0x16
mov dword [esp + 0x18], eax
mov eax, dword [0x223f100]
mov dword [esp + 0x14], ecx
movzx ecx, byte [eax + 0x207]
inc esi
cmp esi, ecx
jl 0x4bbc60
add eax, 0x230
mov ecx, eax
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x4bbd81
sub ecx, esi
mov dword [esp + 0x1c], ecx
je 0x4bbdcf
fld dword [esp + 0x10]
push eax
fsub dword [0x6bc890]
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005cd414
push eax
mov eax, dword [0x70859c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xa
push eax
mov ecx, 0x2209408
call fcn.00543d30
lea ecx, [ebx + 0x3e10]
call fcn.005277a0
lea ecx, [ebx + 0x43e8]
call fcn.005277a0
mov ecx, dword [0x7191d4]
mov edx, dword [ecx]
push 0x3c
call dword [edx + 4]
test al, al
je 0x4bc362
mov eax, dword [0x70859c]
fld dword [esp + 0x10]
cdq
sub eax, edx
mov esi, eax
sar esi, 1
sub esi, 0x70
call fcn.005cd414
mov edi, eax
push edi
push esi
lea ecx, [ebx + 0x20c]
call fcn.00549a70
push 0
mov ecx, 0x2203adc
call fcn.00532450
xor eax, eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov ecx, 0x2203adc
mov dword [esp + 0x6c], eax
call fcn.00532dc0
push eax
lea ecx, [esp + 0x54]
push 0x6be170
push ecx
call fcn.005cd489
push 0x13
lea edx, [esp + 0x60]
push edx
lea eax, [ebx + 0x177]
push eax
call fcn.005cd0f0
fld dword [0x8655c0]
fadd dword [0x719a54]
add esp, 0x18
lea ecx, [esp + 0x50]
fst dword [0x8655c0]
fcomp dword [0x6bc860]
fnstsw ax
test ah, 0x41
jne 0x4bbead
push ecx
push 0x6be170
mov edx, ecx
push edx
jmp 0x4bbeb8
lea eax, [esp + 0x50]
push eax
push 0x6c1670
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
fld dword [0x8655c0]
fcomp dword [0x6bc4dc]
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x4bbede
mov dword [0x8655c0], 0
lea edx, [esp + 0x50]
push edx
push 0xaa
push 0
push 0xff
push 0xff
push 0xff
add edi, 0x3c
push edi
add esi, 0x18
push esi
mov ecx, 0x2209408
call fcn.00543d30
lea ecx, [ebx + 0x3e10]
call fcn.005277a0
lea ecx, [ebx + 0x43e8]
call fcn.005277a0
jmp 0x4bc362
test ecx, ecx
je 0x4bbf87
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4bbf87
fld dword [ebx + 0x4d7c]
fcomp dword [0x6bb600]
fnstsw ax
test ah, 0x41
jne 0x4bbfa6
fld dword [esp + 0x10]
call fcn.005cd414
fld dword [esp + 0x20]
push eax
call fcn.005cd414
fld dword [ebx + 0x4d7c]
fmul dword [0x6bc8c4]
push eax
call fcn.005cd414
movzx ecx, al
shl ecx, 0x18
or ecx, 0xffffff
push ecx
lea ecx, [ebx + 0x1dc]
call fcn.00549ff0
jmp 0x4bbfa6
fld dword [esp + 0x10]
call fcn.005cd414
fld dword [esp + 0x20]
push eax
call fcn.005cd414
push eax
lea ecx, [ebx + 0x1dc]
call fcn.00549a70
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bc006
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4bc006
fld dword [ebx + 0x4d7c]
fcomp dword [0x6be808]
fnstsw ax
test ah, 0x41
jne 0x4bc052
lea ecx, [ebx + 0x20d8]
call fcn.005277a0
lea ecx, [ebx + 0x26b0]
call fcn.005277a0
lea ecx, [ebx + 0x2c88]
call fcn.005277a0
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bc052
mov eax, dword [ecx]
push 0x32
call dword [eax + 4]
jmp 0x4bc038
lea ecx, [ebx + 0x20d8]
call fcn.005277a0
lea ecx, [ebx + 0x26b0]
call fcn.005277a0
lea ecx, [ebx + 0x2c88]
call fcn.005277a0
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bc052
mov edx, dword [ecx]
push 0x32
call dword [edx + 4]
test al, al
je 0x4bc052
lea ecx, [ebx + 0x3260]
call fcn.005277a0
lea ecx, [ebx + 0x3838]
call fcn.005277a0
mov al, byte [ebx + 0x23c]
test al, al
jne 0x4bc175
push 0
mov ecx, 0x2203adc
call fcn.00532450
mov ecx, 0x2203adc
call fcn.00532dc0
push eax
lea eax, [ebx + 4]
push 0x6be170
push eax
call fcn.005cd489
add esp, 0xc
xor eax, eax
mov ecx, 0x80
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
lea eax, [ebx + 0x27]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4bc0a0
sub eax, edx
mov edx, eax
xor eax, eax
test edx, edx
jle 0x4bc0cf
mov ecx, edx
mov esi, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
mov eax, edx
mov ecx, dword [0x7191d4]
test ecx, ecx
mov byte [esp + eax + 0x2c0], 0
je 0x4bc140
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4bc140
fld dword [ebx + 0x4d7c]
fcomp dword [0x6be808]
fnstsw ax
test ah, 0x41
jne 0x4bc362
fld dword [0x709d6c]
push 0
fadd dword [esp + 0x14]
push 0
push 0
call fcn.005cd414
fld dword [0x709d68]
fadd dword [esp + 0x2c]
push eax
call fcn.005cd414
push eax
mov ecx, 0x2209408
call fcn.00545ed0
lea eax, [esp + 0x2c0]
push eax
jmp 0x4bc322
fld dword [0x709d6c]
push 0
fadd dword [esp + 0x14]
push 0
push 0
call fcn.005cd414
fld dword [0x709d68]
fadd dword [esp + 0x2c]
push eax
call fcn.005cd414
push eax
mov ecx, 0x2209408
call fcn.00545ed0
jmp 0x4bc31a
cmp al, 1
jne 0x4bc362
push 1
mov ecx, 0x2203adc
call fcn.00532450
mov ecx, 0x2203adc
lea esi, [ebx + 0x27]
call fcn.00532dc0
push eax
push 0x6be170
push esi
call fcn.005cd489
add esp, 0xc
xor eax, eax
mov ecx, 0x80
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4bc1c0
sub eax, edx
mov edx, eax
xor eax, eax
test edx, edx
jle 0x4bc1ef
mov ecx, edx
mov esi, ecx
shr ecx, 2
mov eax, 0x2a2a2a2a
lea edi, [esp + 0x2c0]
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
mov eax, edx
fld dword [0x8655c0]
mov byte [esp + eax + 0x2c0], 0
fadd dword [0x719a54]
lea edx, [esp + 0x2c0]
fst dword [0x8655c0]
fcomp dword [0x6bc860]
fnstsw ax
test ah, 0x41
jne 0x4bc228
push edx
push 0x6be170
mov eax, edx
push eax
jmp 0x4bc236
lea ecx, [esp + 0x2c0]
push ecx
push 0x6c1670
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
fld dword [0x8655c0]
fcomp dword [0x6bc4dc]
add esp, 0xc
fnstsw ax
test ah, 0x41
jne 0x4bc25c
mov dword [0x8655c0], 0
mov ecx, dword [0x7191d4]
test ecx, ecx
je 0x4bc2d6
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4bc2d6
fld dword [ebx + 0x4d7c]
fcomp dword [0x6be808]
fnstsw ax
test ah, 0x41
jne 0x4bc362
fld dword [0x709d6c]
lea ecx, [ebx + 4]
fadd dword [esp + 0x10]
push ecx
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005cd414
fld dword [0x709d68]
fadd dword [esp + 0x38]
push eax
call fcn.005cd414
push eax
mov ecx, 0x2209408
call fcn.00543d30
lea edx, [esp + 0x2c0]
push edx
jmp 0x4bc322
fld dword [0x709d6c]
lea eax, [ebx + 4]
fadd dword [esp + 0x10]
push eax
push 0x96
push 0
push 0xff
push 0xff
push 0xff
call fcn.005cd414
fld dword [0x709d68]
fadd dword [esp + 0x38]
push eax
call fcn.005cd414
push eax
mov ecx, 0x2209408
call fcn.00543d30
lea ecx, [esp + 0x2c0]
push ecx
fld dword [0x709d74]
push 0x96
fadd dword [esp + 0x18]
push 0
push 0xff
push 0xff
push 0xff
call fcn.005cd414
fld dword [0x709d70]
fadd dword [esp + 0x38]
push eax
call fcn.005cd414
mov ecx, 0x2209408
push eax
call fcn.00543d30
cmp dword [0x708598], 5
jne 0x4bc382
mov eax, 0x719a18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4bc373
sub eax, edx
mov dword [esp + 0x1c], eax
jne 0x4bc393
mov ebx, dword [ebx + 0x49d8]
test ebx, ebx
je 0x4bc393
mov ecx, ebx
call fcn.004c4ae0
mov ecx, 0x71c1f0
call fcn.0041ffd0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret