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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x320
mov eax, dword [0x632b20]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
cmp dword [0x121bbdc], 0xa
jae 0x51b252
call fcn.00462cc0
xor eax, eax
mov word [ebp - 0x2c], ax
xor ecx, ecx
mov dword [ebp - 0x2a], ecx
mov dword [ebp - 0x26], ecx
mov dword [ebp - 0x22], ecx
mov word [ebp - 0x1e], cx
mov dword [ebp - 0x24], 0xffffffff
xor edx, edx
mov word [ebp - 0x1e], dx
mov byte [ebp - 0x20], 0
mov byte [ebp - 0x1f], 4
mov dword [ebp - 4], 0
mov dword [ebp - 0x1c], 0
mov eax, dword [0x121bbdc]
mov dword [ebp - 0x2fc], eax
cmp dword [ebp - 0x2fc], 0xb
ja case.default.0x51b2a8
mov ecx, dword [ebp - 0x2fc]
jmp dword [ecx*4 + 0x51cf80]
mov dword [0xf1c0e0], 0
mov dword [0x121bbdc], 1
jmp case.default.0x51b2a8
mov dword [0x7d22c4], 2
cmp dword [0xf1c0e0], 5
jge 0x51b2f4
call fcn.0046d480
mov edx, dword [0xf1c0e0]
add edx, 1
mov dword [0xf1c0e0], edx
jmp case.default.0x51b2a8
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c3b8
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c3b9
push 0xde
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
call fcn.0046d480
mov dword [0x124bc98], 0
call fcn.005a0c00
push 0x10
push 0
mov edx, dword [0x6ba8fc]
mov eax, dword [edx + 0xc]
push eax
push 0
push 0
mov ecx, dword [0x124bc9c]
mov edx, dword [ecx]
mov eax, dword [0x124bc9c]
push eax
mov ecx, dword [edx + 0x1c]
call ecx
mov dword [0x124bc98], 1
call dword [sym.imp.kernel32.dll_GetTickCount]
cmp eax, 0x35a4e900
jbe 0x51b39c
call dword [sym.imp.kernel32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x35a4e900
div ecx
mov dword [ebp - 0x300], edx
jmp 0x51b3a8
call dword [sym.imp.kernel32.dll_GetTickCount]
mov dword [ebp - 0x300], eax
mov edx, dword [ebp - 0x300]
mov dword [ebp - 0x308], edx
mov dword [ebp - 0x304], 0
fild qword [ebp - 0x308]
fstp qword [0x7d12b8]
mov dword [0x62f838], 1
mov dword [0x121bbdc], 2
jmp case.default.0x51b2a8
mov dword [0x7d22c4], 2
push ecx
fld dword [0x5e85e4]
fstp dword [esp]
push 0x20
push 0x11
call fcn.0059e640
add esp, 0xc
cmp eax, 1
jne 0x51b421
mov dword [0x121bbdc], 3
push 0
push 0x5f2770
call fcn.00462a60
add esp, 8
jmp case.default.0x51b2a8
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c3b8
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
cmp dword [0xd2df9c], 0xb
jne 0x51b472
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c411
push 0xde
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
jmp 0x51b494
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c3b9
push 0xde
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
push 0x629dac
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b4ad
call fcn.0051aad0
jmp 0x51b4e7
push 0x629dc4
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b4cb
call fcn.0051afd0
jmp case.default.0x51b2a8
push 0x629ddc
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b4e7
call fcn.0051afd0
jmp case.default.0x51b2a8
cmp dword [0xd2df9c], 0
jl 0x51b53b
cmp dword [0xd2df9c], 0xc
jge 0x51b53b
mov eax, dword [0xd2df9c]
imul eax, eax, 0x28
add eax, 0x62a4a4
push eax
push 0x5f27dc
lea ecx, [ebp - 0x1c0]
push ecx
call fcn.005cc4f5
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x1c0]
push edx
push 0
push 0xc
push 3
push 0x32
push 0xfa
call fcn.00477f60
add esp, 0x20
push 0
push 0
push 0
push 0xdf
push 0x629ddc
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
push 0x629dac
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
push 0x629dc4
call fcn.0051a550
add esp, 0x14
push 0x629e0c
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b59c
call fcn.0051ad70
jmp 0x51b5e5
push 0x629e24
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b5b5
call fcn.0051adf0
jmp 0x51b5e5
push 0x629e3c
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b5ce
call fcn.0051af70
jmp 0x51b5e5
push 0x629e54
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51b5e5
call fcn.0051af10
fild dword [0xf1ce50]
fdiv qword [0x5e8710]
call fcn.005cbd10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x51b647
push 0x190
mov ecx, 0xf1cd98
call fcn.005b7500
movzx eax, al
test eax, eax
je 0x51b62f
cmp dword [ebp - 0x1c], 0
jle 0x51b622
call fcn.0051adf0
jmp 0x51b62d
cmp dword [ebp - 0x1c], 0
jge 0x51b62d
call fcn.0051ad70
jmp 0x51b647
cmp dword [ebp - 0x1c], 0
jle 0x51b63c
call fcn.0051af10
jmp 0x51b647
cmp dword [ebp - 0x1c], 0
jge 0x51b647
call fcn.0051af70
push 0
push 0
push 0
push 0xdf
push 0x629e0c
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
push 0x629e24
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
push 0x629e3c
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
push 0x629e54
call fcn.0051a550
add esp, 0x14
mov dword [ebp - 4], 0
jmp 0x51b6b9
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0xc
jge 0x51be1a
mov edx, dword [ebp - 4]
imul edx, edx, 0x18
add edx, str.hG_f_f
push edx
call fcn.0051a440
add esp, 4
and eax, 2
je 0x51ba2a
mov eax, dword [0xf1ce2c]
and eax, 1
jne 0x51b6fa
mov ecx, dword [0xf1ce30]
and ecx, 1
je 0x51ba25
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
cmp dword [edx + ecx + 0xd37bb8], 0
jle 0x51ba11
push 0xf0
push 0x140
push 0x33
call fcn.005af300
add esp, 0xc
mov edx, dword [0xd3736c]
add edx, 1
mov dword [0xd3736c], edx
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + ecx + 0xd37bb8]
sub eax, 1
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov dword [ecx + edx + 0xd37bb8], eax
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov eax, dword [0xf10f94]
sub eax, dword [edx + ecx + 0xd37bb4]
mov dword [0xf10f94], eax
cmp dword [0xd2df9c], 3
jge 0x51b8b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [eax + edx + 0xd37bbc]
imul ecx, ecx, 0x64c
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + eax + 0xd37ba8]
imul eax, eax, 0x275b0
mov ecx, dword [eax + ecx + 0xd37bb8]
sub ecx, 1
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + eax + 0xd37bbc]
imul eax, eax, 0x64c
mov edx, dword [0xd2df9c]
mov edx, dword [edx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov esi, dword [0xd2df9c]
imul esi, esi, 0x275b0
mov edx, dword [esi + edx + 0xd37ba8]
imul edx, edx, 0x275b0
mov dword [edx + eax + 0xd37bb8], ecx
jmp 0x51ba0f
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
cmp dword [eax + edx + 0xd37bac], 0
jle 0x51ba0f
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
cmp dword [eax + edx + 0xd37bac], 3
jg 0x51ba0f
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov eax, dword [eax + edx + 0xd37bac]
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], 0
mov ecx, dword [ebp - 0x1c8]
mov dword [ebp - 0x30c], ecx
cmp dword [ebp - 0x30c], 1
je 0x51b966
cmp dword [ebp - 0x30c], 2
je 0x51b972
jmp 0x51b97e
mov dword [ebp - 0x1c4], 2
jmp 0x51b988
mov dword [ebp - 0x1c4], 1
jmp 0x51b988
mov dword [ebp - 0x1c4], 0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [ecx + eax + 0xd37bbc]
imul edx, edx, 0x64c
mov eax, dword [ebp - 0x1c4]
imul eax, eax, 0x275b0
mov ecx, dword [eax + edx + 0xd37bb8]
sub ecx, 1
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + eax + 0xd37bbc]
imul eax, eax, 0x64c
mov edx, dword [ebp - 0x1c4]
imul edx, edx, 0x275b0
mov dword [edx + eax + 0xd37bb8], ecx
jmp 0x51ba25
push 0xf0
push 0x140
push 0x37
call fcn.005af300
add esp, 0xc
jmp 0x51bdd5
mov eax, dword [ebp - 4]
imul eax, eax, 0x18
add eax, str.vG_f_f
push eax
call fcn.0051a440
add esp, 4
and eax, 2
je 0x51bdd5
mov ecx, dword [0xf1ce2c]
and ecx, 1
jne 0x51ba61
mov edx, dword [0xf1ce30]
and edx, 1
je 0x51bdd5
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov esi, dword [0xd2df9c]
mov esi, dword [esi*4 + 0xd2ec9c]
add esi, dword [ebp - 4]
imul esi, esi, 0x64c
mov edx, dword [eax + edx + 0xd37bb8]
cmp edx, dword [ecx + esi + 0xd37ba0]
jge 0x51bdc1
cmp dword [0xd3736c], 0
jle 0x51bdab
push 0xf0
push 0x140
push 0x33
call fcn.005af300
add esp, 0xc
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + ecx + 0xd37bb8]
add eax, 1
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov dword [ecx + edx + 0xd37bb8], eax
mov edx, dword [0xd3736c]
sub edx, 1
mov dword [0xd3736c], edx
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov ecx, dword [0xf10f94]
add ecx, dword [eax + edx + 0xd37bb4]
mov dword [0xf10f94], ecx
cmp dword [0xd2df9c], 3
jge 0x51bc4a
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [ecx + eax + 0xd37bbc]
imul edx, edx, 0x64c
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [eax + ecx + 0xd37ba8]
imul ecx, ecx, 0x275b0
mov edx, dword [ecx + edx + 0xd37bb8]
add edx, 1
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [eax + ecx + 0xd37bbc]
imul ecx, ecx, 0x64c
mov eax, dword [0xd2df9c]
mov eax, dword [eax*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov esi, dword [0xd2df9c]
imul esi, esi, 0x275b0
mov eax, dword [esi + eax + 0xd37ba8]
imul eax, eax, 0x275b0
mov dword [eax + ecx + 0xd37bb8], edx
jmp 0x51bda9
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
cmp dword [ecx + eax + 0xd37bac], 0
jle 0x51bda9
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
cmp dword [ecx + eax + 0xd37bac], 3
jg 0x51bda9
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov ecx, dword [ecx + eax + 0xd37bac]
mov dword [ebp - 0x1d0], ecx
mov dword [ebp - 0x1cc], 0
mov edx, dword [ebp - 0x1d0]
mov dword [ebp - 0x310], edx
cmp dword [ebp - 0x310], 1
je 0x51bd03
cmp dword [ebp - 0x310], 2
je 0x51bd0f
jmp 0x51bd1b
mov dword [ebp - 0x1cc], 2
jmp 0x51bd25
mov dword [ebp - 0x1cc], 1
jmp 0x51bd25
mov dword [ebp - 0x1cc], 0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [edx + ecx + 0xd37bbc]
imul eax, eax, 0x64c
mov ecx, dword [ebp - 0x1cc]
imul ecx, ecx, 0x275b0
mov edx, dword [ecx + eax + 0xd37bb8]
add edx, 1
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [eax + ecx + 0xd37bbc]
imul ecx, ecx, 0x64c
mov eax, dword [ebp - 0x1cc]
imul eax, eax, 0x275b0
mov dword [eax + ecx + 0xd37bb8], edx
jmp 0x51bdbf
push 0xf0
push 0x140
push 0x37
call fcn.005af300
add esp, 0xc
jmp 0x51bdd5
push 0xf0
push 0x140
push 0x37
call fcn.005af300
add esp, 0xc
push 0
push 0
push 0
push 0xdf
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x18
add ecx, str.hG_f_f
push ecx
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xdf
mov edx, dword [ebp - 4]
imul edx, edx, 0x18
add edx, str.vG_f_f
push edx
call fcn.0051a550
add esp, 0x14
jmp 0x51b6b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd374d0]
push ecx
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xcba8c4]
add eax, 1
push eax
push 0x5f27ec
lea ecx, [ebp - 0x140]
push ecx
call fcn.005cc4f5
add esp, 0x10
push 0xdf
push 1
push 0
push 3
lea edx, [ebp - 0x140]
push edx
push 0xd6
push 0x245
call fcn.004a5260
add esp, 0x1c
mov eax, dword [0xd3736c]
push eax
push 0x5f27f4
lea ecx, [ebp - 0x140]
push ecx
call fcn.005cc4f5
add esp, 0xc
cmp dword [0xd3736c], 0
jne 0x51beb9
push 0xdf
push 1
push 6
push 3
lea edx, [ebp - 0x140]
push edx
push 0x122
push 0x23f
call fcn.004a5260
add esp, 0x1c
jmp 0x51bedd
push 0xdf
push 1
push 0
push 3
lea eax, [ebp - 0x140]
push eax
push 0x122
push 0x23f
call fcn.004a5260
add esp, 0x1c
mov dword [ebp - 4], 0
jmp 0x51beef
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0xc
jge 0x51c5e3
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
cmp dword [edx + 0x629e78], 0
jl 0x51c100
push 0xdf
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x629e74]
add ecx, 0x30
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x629e70]
add eax, 0x30
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x629e74]
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x629e70]
push ecx
call fcn.00572260
add esp, 0x14
test eax, eax
je 0x51c100
cmp dword [0x624234], 0xffffffff
je 0x51bfdf
mov edx, dword [0x624234]
cmp edx, dword [0xd2df9c]
jne 0x51bf89
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
cmp dword [0x6246e4], ecx
je 0x51bfdf
mov edx, dword [0x624234]
imul edx, edx, 0x275b0
mov eax, dword [0x6246e4]
imul eax, eax, 0x64c
movzx ecx, byte [edx + eax + 0xd37bc0]
test ecx, ecx
je 0x51bfdf
mov edx, dword [0x624234]
imul edx, edx, 0x275b0
mov eax, dword [0x6246e4]
imul eax, eax, 0x64c
mov byte [edx + eax + 0xd37bc0], 0
mov dword [0x624234], 0xffffffff
mov dword [0x6246e4], 0xffffffff
mov ecx, dword [0xf1ce2c]
and ecx, 2
je 0x51c093
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
movzx edx, byte [edx + ecx + 0xd37bc0]
neg edx
sbb edx, edx
add edx, 1
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov ecx, dword [ecx*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov byte [eax + ecx + 0xd37bc0], dl
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
movzx edx, byte [edx + ecx + 0xd37bc0]
test edx, edx
je 0x51c093
mov eax, dword [0xd2df9c]
mov dword [0x624234], eax
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
mov dword [0x6246e4], edx
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
movzx eax, byte [eax + edx + 0xd37bc0]
test eax, eax
je 0x51c0e1
push 1
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.0051b010
add esp, 0xc
jmp 0x51c100
push 0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.0051b010
add esp, 0xc
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
cmp dword [ecx + 0x629e78], 0
jl 0x51c5de
lea edx, [ebp - 0x2c]
push edx
push 0
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x629e78]
imul edx, edx, 0x64c
mov eax, dword [eax + edx + 0xd37b9c]
push eax
push 0xdf
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x629e74]
add edx, 0x18
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x629e70]
add ecx, 0x18
push ecx
call fcn.005a19f0
add esp, 0x18
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x629e78]
imul ecx, ecx, 0x64c
mov edx, dword [edx + ecx + 0xd37bac]
mov dword [ebp - 0x1d4], edx
cmp dword [ebp - 0x1d4], 0
je 0x51c234
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x314], eax
cmp dword [ebp - 0x314], 1
je 0x51c1cc
cmp dword [ebp - 0x314], 2
je 0x51c1d8
cmp dword [ebp - 0x314], 5
je 0x51c1e4
jmp 0x51c1f0
mov dword [ebp - 0x2dc], 0x3c3bb
jmp 0x51c1fa
mov dword [ebp - 0x2dc], 0x3c3ba
jmp 0x51c1fa
mov dword [ebp - 0x2dc], 0x3c410
jmp 0x51c1fa
mov dword [ebp - 0x2dc], 0x3c3bd
lea ecx, [ebp - 0x2c]
push ecx
push 0
mov edx, dword [ebp - 0x2dc]
push edx
push 0xe0
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x629e74]
add ecx, 0xe
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x629e70]
add eax, 4
push eax
call fcn.005a19f0
add esp, 0x18
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a2f8]
push edx
push 0x5f27f8
lea eax, [ebp - 0x2d8]
push eax
call fcn.005cc4f5
add esp, 0xc
push 0xdf
push 1
push 0
push 3
lea ecx, [ebp - 0x2d8]
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x62a2f4]
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a2f0]
push edx
call fcn.004a5260
add esp, 0x1c
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a268]
push ecx
push 0x5f2800
lea edx, [ebp - 0x2d8]
push edx
call fcn.005cc4f5
add esp, 0xc
push 0xdf
push 1
push 1
push 3
lea eax, [ebp - 0x2d8]
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a264]
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a260]
push ecx
call fcn.004a5260
add esp, 0x1c
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov edx, dword [edx + ecx + 0xd37bb8]
push edx
push 0x5f2808
lea eax, [ebp - 0x2d8]
push eax
call fcn.005cc4f5
add esp, 0xc
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
cmp dword [ecx + eax + 0xd37bb8], 0
jle 0x51c37d
push 0xdf
push 1
push 6
push 3
lea ecx, [ebp - 0x2d8]
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x62a1d4]
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a1d0]
push edx
call fcn.004a5260
add esp, 0x1c
jmp 0x51c3b1
push 0xdf
push 1
push 0
push 3
lea eax, [ebp - 0x2d8]
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a1d4]
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a1d0]
push ecx
call fcn.004a5260
add esp, 0x1c
push 0
push 0
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
lea edx, [edx + ecx + 0xd3757c]
push edx
push 0
push 0xc
push 3
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
movzx ecx, word [eax + 0x629f04]
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
movzx eax, word [edx + 0x629f00]
push eax
call fcn.00477f60
add esp, 0x20
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
cmp dword [ecx + eax + 0xd37bb0], 0x64
je 0x51c5de
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
cmp dword [ecx + eax + 0xd37bac], 3
jne 0x51c5de
mov ecx, dword [0xd2df9c]
imul ecx, ecx, 0x275b0
mov edx, dword [0xd2df9c]
mov eax, dword [edx*4 + 0xd2ec9c]
add eax, dword [ebp - 4]
imul eax, eax, 0x64c
mov eax, dword [ecx + eax + 0xd37bb0]
cdq
mov ecx, 0xa
idiv ecx
mov dword [ebp - 0x2e0], edx
cmp dword [ebp - 0x2e0], 0
je 0x51c4ee
mov edx, dword [ebp - 0x2e0]
push edx
mov eax, dword [0xd2df9c]
imul eax, eax, 0x275b0
mov ecx, dword [0xd2df9c]
mov edx, dword [ecx*4 + 0xd2ec9c]
add edx, dword [ebp - 4]
imul edx, edx, 0x64c
mov eax, dword [eax + edx + 0xd37bb0]
push eax
push 0x5f2810
lea ecx, [ebp - 0x2d8]
push ecx
call fcn.005cc4f5
add esp, 0x10
jmp 0x51c533
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov eax, dword [edx + ecx + 0xd37bb0]
cdq
mov ecx, 0xa
idiv ecx
push eax
push 0x5f2828
lea edx, [ebp - 0x2d8]
push edx
call fcn.005cc4f5
add esp, 0xc
push 0
push 0
lea eax, [ebp - 0x2d8]
push eax
push 4
push 0xc
push 3
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x629f04]
add edx, 0xf
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
movzx ecx, word [eax + 0x629f00]
push ecx
call fcn.00477f60
add esp, 0x20
mov edx, dword [0xd2df9c]
imul edx, edx, 0x275b0
mov eax, dword [0xd2df9c]
mov ecx, dword [eax*4 + 0xd2ec9c]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x64c
mov edx, dword [edx + ecx + 0xd37ba4]
push edx
push 0x5f283c
lea eax, [ebp - 0x2d8]
push eax
call fcn.005cc4f5
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x2d8]
push ecx
push 4
push 0xc
push 3
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x629f04]
add eax, 0x1e
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
movzx edx, word [ecx + 0x629f00]
push edx
call fcn.00477f60
add esp, 0x20
jmp 0x51bee6
mov dword [ebp - 4], 0
jmp 0x51c5f5
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 6
jge 0x51c787
mov ecx, dword [ebp - 4]
add ecx, dword [0xf10fc8]
cmp ecx, 0xc
jge 0x51c782
mov dword [ebp - 0x2e4], 0
push 0xdf
mov edx, dword [ebp - 4]
imul edx, edx, 0x18
mov eax, dword [edx + 0x62a414]
add eax, 0x30
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x18
mov edx, dword [ecx + 0x62a410]
add edx, 0x30
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0x18
mov ecx, dword [eax + 0x62a414]
sub ecx, 0x10
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0x18
mov eax, dword [edx + 0x62a410]
push eax
call fcn.00572260
add esp, 0x14
test eax, eax
je 0x51c6b6
mov dword [ebp - 0x2e4], 0xfffffff0
push 0
mov ecx, dword [0xf10fc8]
add ecx, dword [ebp - 4]
imul ecx, ecx, 0x28
add ecx, 0x62a4a4
push ecx
push 4
push 1
push 3
mov edx, dword [ebp - 4]
imul edx, edx, 0x18
mov eax, dword [edx + 0x62a414]
add eax, 0x20
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x18
mov edx, dword [ecx + 0x62a410]
add edx, 2
push edx
call fcn.00477da0
add esp, 0x1c
lea eax, [ebp - 0x2c]
push eax
push 0
mov ecx, dword [ebp - 4]
add ecx, dword [0xf10fc8]
imul ecx, ecx, 0x28
mov edx, dword [ecx + 0x62a4a0]
push edx
push 0xdf
mov eax, dword [ebp - 4]
imul eax, eax, 0x18
mov ecx, dword [eax + 0x62a414]
mov edx, dword [ebp - 0x2e4]
lea eax, [ecx + edx + 0x18]
push eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x18
mov edx, dword [ecx + 0x62a410]
add edx, 0x18
push edx
call fcn.005a19f0
add esp, 0x18
mov eax, dword [ebp - 4]
imul eax, eax, 0x18
add eax, 0x62a410
push eax
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51c782
mov ecx, dword [0xd2df9c]
mov dword [ebp - 0x2e8], ecx
mov edx, dword [0xf10fc8]
add edx, dword [ebp - 4]
mov dword [0xd2df9c], edx
call fcn.0051a750
cmp dword [ebp - 0x2e8], 0xb
je 0x51c75f
cmp dword [0xd2df9c], 0xb
jne 0x51c75f
call fcn.0051a6d0
mov eax, dword [0xd283ac]
mov dword [0xd2d65c], eax
jmp 0x51c782
cmp dword [ebp - 0x2e8], 0xb
jne 0x51c782
cmp dword [0xd2df9c], 0xb
je 0x51c782
call fcn.0051a6d0
mov ecx, dword [0xcda594]
mov dword [0xd2d65c], ecx
jmp 0x51c5ec
mov edx, dword [0xf10f94]
push edx
push 0x5f284c
lea eax, [ebp - 0x18]
push eax
call fcn.005cc4f5
add esp, 0xc
mov ecx, dword [0xf10f94]
cmp ecx, dword [0xd2d65c]
jg 0x51c7d0
push 0xdf
push 1
push 0
push 3
lea edx, [ebp - 0x18]
push edx
push 0x18f
push 0x22b
call fcn.004a5260
add esp, 0x1c
jmp 0x51c7f1
push 0xdf
push 1
push 6
push 3
lea eax, [ebp - 0x18]
push eax
push 0x18f
push 0x22b
call fcn.004a5260
add esp, 0x1c
mov ecx, dword [0xd2d65c]
push ecx
push 0x5f2854
lea edx, [ebp - 0x18]
push edx
call fcn.005cc4f5
add esp, 0xc
push 0xdf
push 1
push 0
push 3
lea eax, [ebp - 0x18]
push eax
push 0x1a3
push 0x22b
call fcn.004a5260
add esp, 0x1c
jmp case.default.0x51b2a8
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c406
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c409
push 0xe4
push 0xf0
mov eax, dword [0xf10f90]
imul eax, eax, 0xa
mov ecx, 0x140
sub ecx, eax
push ecx
call fcn.005a19f0
add esp, 0x18
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c40a
push 0xe4
mov eax, dword [0xf10f90]
imul eax, eax, 0xa
add eax, 0xf0
push eax
push 0x140
call fcn.005a19f0
add esp, 0x18
mov ecx, dword [0xf10f90]
sub ecx, 1
mov dword [0xf10f90], ecx
jne 0x51c8c1
mov dword [0x121bbdc], 5
jmp case.default.0x51b2a8
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c407
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c409
push 0xe4
push 0xf0
mov ecx, dword [0xf10f90]
imul ecx, ecx, 0xa
mov edx, 0x140
sub edx, ecx
push edx
call fcn.005a19f0
add esp, 0x18
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c40a
push 0xe4
mov ecx, dword [0xf10f90]
imul ecx, ecx, 0xa
add ecx, 0xf0
push ecx
push 0x140
call fcn.005a19f0
add esp, 0x18
mov edx, dword [0xf10f90]
add edx, 1
mov dword [0xf10f90], edx
cmp dword [0xf10f90], 0x14
jne 0x51c962
mov dword [0x121bbdc], 3
jmp case.default.0x51b2a8
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c409
push 0xe4
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c40a
push 0xe4
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
mov dword [ebp - 4], 0
jmp 0x51c9bd
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 8
jge 0x51caee
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
cmp dword [eax + 0x62a388], 0
jl 0x51cae9
lea ecx, [ebp - 0x2c]
push ecx
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx*4 + 0xf10f98]
imul eax, eax, 0x275b0
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a388]
imul edx, edx, 0x64c
mov eax, dword [eax + edx + 0xd37b9c]
push eax
push 0xe5
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0xc
mov edx, dword [ecx + 0x62a384]
add edx, 0x18
push edx
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a380]
add ecx, 0x18
push ecx
call fcn.005a19f0
add esp, 0x18
mov edx, dword [ebp - 4]
mov eax, dword [edx*8 + 0xf10124]
push eax
push str.X__d
lea ecx, [ebp - 0x2f8]
push ecx
call fcn.005cc4f5
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x2f8]
push edx
push 0
push 1
push 5
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a384]
add ecx, 0x18
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
mov eax, dword [edx + 0x62a380]
add eax, 0x3c
push eax
call fcn.00477f60
add esp, 0x20
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx*4 + 0xf10f98]
imul edx, edx, 0x275b0
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a388]
imul ecx, ecx, 0x64c
lea edx, [edx + ecx + 0xd3757c]
push edx
push 0
push 0xc
push 5
mov eax, dword [ebp - 4]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x62a384]
add ecx, 0x30
push ecx
mov edx, dword [ebp - 4]
imul edx, edx, 0xc
movzx eax, word [edx + 0x62a380]
push eax
call fcn.00477f60
add esp, 0x20
jmp 0x51c9b4
push 0
push 0
push 0
push 0xe5
push 0x629df4
call fcn.0051a550
add esp, 0x14
cmp dword [0x121bbdc], 6
je 0x51cb1c
cmp dword [0x121bbdc], 7
jne 0x51cc15
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c408
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
cmp dword [0x121bbdc], 6
jne 0x51cbdc
push 0x5f2864
lea edx, [ebp - 0x130]
push edx
call fcn.005cc4f5
add esp, 8
push 0
push 0
lea eax, [ebp - 0x130]
push eax
push 0
push 0xc
push 5
push 0x1b8
push 0x190
call fcn.00477f60
add esp, 0x20
mov ecx, dword [0xf1ce2c]
and ecx, 1
jne 0x51cbb9
mov edx, dword [0xf1ce2c]
and edx, 2
jne 0x51cbb9
movsx eax, byte [0x7d25f5]
and eax, 2
jne 0x51cbb9
movsx ecx, byte [0x7d2608]
and ecx, 2
jne 0x51cbb9
movsx edx, byte [0x7d2603]
and edx, 2
je 0x51cbdc
push 0xf0
push 0x140
push 0x35
call fcn.005af300
add esp, 0xc
call fcn.0051a970
mov dword [0x121bbdc], 7
push 0x5f2880
lea eax, [ebp - 0x130]
push eax
call fcn.005cc4f5
add esp, 8
push 0
push 0
lea ecx, [ebp - 0x130]
push ecx
push 4
push 0
push 5
push 0x17c
push 0x1e
call fcn.00477f60
add esp, 0x20
jmp 0x51ce7d
cmp dword [0x121bbdc], 8
jne 0x51cd12
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c407
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
mov eax, dword [0xf1ce2c]
and eax, 1
jne 0x51cc7a
mov ecx, dword [0xf1ce2c]
and ecx, 2
jne 0x51cc7a
movsx edx, byte [0x7d25f5]
and edx, 2
jne 0x51cc7a
movsx eax, byte [0x7d2608]
and eax, 2
jne 0x51cc7a
movsx ecx, byte [0x7d2603]
and ecx, 2
je 0x51cca2
push 0xf0
push 0x140
push 0x35
call fcn.005af300
add esp, 0xc
mov dword [0x121bbdc], 9
mov dword [0xf10f90], 0
push 0x5f289c
lea edx, [ebp - 0x130]
push edx
call fcn.005cc4f5
add esp, 8
push 0
push 0
lea eax, [ebp - 0x130]
push eax
push 4
push 0
push 5
push 0x17c
push 0x1e
call fcn.00477f60
add esp, 0x20
push 0x5f28bc
lea ecx, [ebp - 0x130]
push ecx
call fcn.005cc4f5
add esp, 8
push 0
push 0
lea edx, [ebp - 0x130]
push edx
push 0
push 0xc
push 5
push 0x1b8
push 0x190
call fcn.00477f60
add esp, 0x20
jmp 0x51ce7d
lea eax, [ebp - 0x2c]
push eax
push 0
push 0x3c406
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
push 0
push 0
push 0
push 0xe5
push 0x629d94
call fcn.0051a550
add esp, 0x14
push 0
push 0
push 0
push 0xe5
push 0x629d7c
call fcn.0051a550
add esp, 0x14
push 0x629d7c
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51cd93
push 0xf0
push 0x140
push 0x35
call fcn.005af300
add esp, 0xc
mov dword [0x121bbdc], 6
jmp 0x51cdda
push 0x629d94
call fcn.0051a440
add esp, 4
and eax, 1
jne 0x51cdb7
push 0x629df4
call fcn.0051a440
add esp, 4
and eax, 1
je 0x51cdda
push 0xf0
push 0x140
push 0x37
call fcn.005af300
add esp, 0xc
mov dword [0x121bbdc], 8
jmp case.default.0x51b2a8
cmp dword [0xd2df9c], 0xb
jne 0x51ce07
mov ecx, dword [0xd2d45c]
push ecx
mov edx, dword [0xd2ecd0]
push edx
push 0x5f28d8
lea eax, [ebp - 0x130]
push eax
call fcn.005cc4f5
add esp, 0x10
jmp 0x51ce29
mov ecx, dword [0xd2d45c]
push ecx
mov edx, dword [0xd2ecd0]
push edx
push 0x5f2910
lea eax, [ebp - 0x130]
push eax
call fcn.005cc4f5
add esp, 0x10
push 0
push 0
lea ecx, [ebp - 0x130]
push ecx
push 4
push 0
push 5
push 0x17c
push 0x1e
call fcn.00477f60
add esp, 0x20
push 0x5f2940
lea edx, [ebp - 0x130]
push edx
call fcn.005cc4f5
add esp, 8
push 0
push 0
lea eax, [ebp - 0x130]
push eax
push 4
push 0
push 5
push 0x190
push 0x1e
call fcn.00477f60
add esp, 0x20
jmp case.default.0x51b2a8
mov dword [0x62f838], 1
call fcn.0059b290
call dword [sym.imp.kernel32.dll_GetTickCount]
cmp eax, 0x35a4e900
jbe 0x51ceb5
call dword [sym.imp.kernel32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x35a4e900
div ecx
mov dword [ebp - 0x318], edx
jmp 0x51cec1
call dword [sym.imp.kernel32.dll_GetTickCount]
mov dword [ebp - 0x318], eax
mov edx, dword [ebp - 0x318]
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x31c], 0
fild qword [ebp - 0x320]
fstp qword [0x7d12b8]
mov dword [ebp - 0x24], 0xffffffff
xor eax, eax
mov word [ebp - 0x1e], ax
mov byte [ebp - 0x20], 0
mov byte [ebp - 0x1f], 4
lea ecx, [ebp - 0x2c]
push ecx
push 0
push 0x3c3b8
push 3
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
lea edx, [ebp - 0x2c]
push edx
push 0
push 0x3c3b9
push 0xde
push 0xf0
push 0x140
call fcn.005a19f0
add esp, 0x18
mov dword [0x121bbdc], 0xb
jmp case.default.0x51b2a8
mov dword [0x7d22c4], 2
push ecx
fld dword [0x5e85e4]
fstp dword [esp]
push 0x20
push 0x10
call fcn.0059e640
add esp, 0xc
cmp eax, 1
jne case.default.0x51b2a8
call fcn.00519a20
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005cbcfe
mov esp, ebp
pop ebp
ret