Function at 0x53645c
Capabilities:
Check for time delay via gettickcount
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x27c
push 0
push 0
dec ecx
jne 0x536464
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
call fcn.004048c4
xor eax, eax
push ebp
push 0x53b76c
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [0x5d66b0], eax
mov eax, dword [ebp - 8]
cmp byte [eax], 0x2b
jne 0x536bdb
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 8]
call fcn.004046d4
mov ecx, eax
dec ecx
mov edx, 2
mov eax, dword [ebp - 8]
call fcn.00404934
push 0
lea eax, [ebp - 0x10e8]
push eax
mov byte [ebp - 0x10ec], 0x2f
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
mov edx, dword [ebp - 0x10e8]
lea eax, [ebp - 0x1c]
call fcn.004044ac
mov eax, dword [ebp - 0x18]
mov edx, 0x53b788
call fcn.00404820
jne 0x5364fe
mov byte [0x5d88aa], 1
mov eax, dword [ebp - 0x18]
mov edx, 0x53b794
call fcn.00404820
jne 0x536514
mov byte [0x5d88ab], 1
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7a0
call fcn.00404820
jne 0x53652a
mov byte [0x5d88ab], 0
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7b0
call fcn.00404820
jne 0x536540
mov byte [0x5d88ac], 1
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7bc
call fcn.00404820
jne 0x536556
mov byte [0x5d88ac], 0
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7cc
call fcn.00404820
jne 0x536576
mov byte [0x5d88ae], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d8884], eax
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7d8
call fcn.00404820
jne 0x53658c
mov byte [0x5d88ae], 0
mov eax, dword [ebp - 0x18]
mov edx, 0x53b7e8
call fcn.00404820
jne 0x536b9a
cmp dword [0x5d8440], 0
je 0x536b9a
xor eax, eax
mov dword [0x5d8840], eax
mov eax, dword [0x5d8440]
xor edx, edx
mov dword [eax + 0xf4], edx
xor eax, eax
mov dword [0x5d66c4], eax
mov ax, word [0x5d6a24]
cmp ax, 0xbc3
je 0x5365dd
cmp ax, 0xbc5
jne 0x5367ed
mov eax, dword [0x5d66ac]
mov eax, dword [eax + 8]
test eax, eax
jle 0x536617
dec eax
test eax, eax
jl 0x53660d
inc eax
mov dword [ebp - 0x64], eax
xor ebx, ebx
mov edx, ebx
mov eax, dword [0x5d66ac]
call fcn.00419afc
xor edx, edx
call fcn.00402734
inc ebx
dec dword [ebp - 0x64]
jne 0x5365f4
mov eax, dword [0x5d66ac]
mov edx, dword [eax]
call dword [edx + 8]
mov byte [0x5d670c], 0
mov byte [0x5d6798], 0
mov byte [0x5d6799], 0
cmp byte [0x5d682c], 0
je 0x536644
mov eax, 0x5d67e4
mov edx, 0x40
call fcn.004074c4
xor eax, eax
mov dword [0x5d6900], eax
mov byte [0x5d6888], 0
mov edx, dword [0x5d6c50]
inc edx
mov eax, dword [0x5d70ac]
call fcn.005bd954
test al, al
je 0x53666d
inc dword [0x5d6c50]
mov eax, dword [0x5d8440]
xor edx, edx
mov dword [eax + 0xf8], edx
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6d9c], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6a1c], eax
cmp dword [0x5d6738], 0
jne 0x53670f
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
cmp eax, 0x258
jae 0x5366c3
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, 0x258
sub edx, eax
mov dword [0x5d6a18], edx
jmp 0x5366ca
xor eax, eax
mov dword [0x5d6a18], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6cc8], eax
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
cmp eax, 0x320
jae 0x536703
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, 0x320
sub edx, eax
mov dword [0x5d6cc4], edx
jmp 0x5367df
xor eax, eax
mov dword [0x5d6cc4], eax
jmp 0x5367df
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
imul eax, dword [0x5d6738], 0x96
push eax
mov eax, 0x258
pop edx
sub eax, edx
cdq
cmp edx, dword [esp + 4]
jne 0x536741
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x53676b
jmp 0x536745
pop edx
pop eax
jle 0x53676b
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
imul edx, dword [0x5d6738], 0x96
mov ecx, 0x258
sub ecx, edx
sub ecx, eax
mov dword [0x5d6a18], ecx
jmp 0x536772
xor eax, eax
mov dword [0x5d6a18], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6cc8], eax
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
imul eax, dword [0x5d6738], 0xc8
push eax
mov eax, 0x320
pop edx
sub eax, edx
cdq
cmp edx, dword [esp + 4]
jne 0x5367ae
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x5367d8
jmp 0x5367b2
pop edx
pop eax
jle 0x5367d8
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
imul edx, dword [0x5d6738], 0xc8
mov ecx, 0x320
sub ecx, edx
sub ecx, eax
mov dword [0x5d6cc4], ecx
jmp 0x5367df
xor eax, eax
mov dword [0x5d6cc4], eax
xor eax, eax
mov dword [0x5d68ec], eax
xor eax, eax
mov dword [0x5d68f0], eax
cmp word [0x5d6a24], 0xbc9
jne 0x536896
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d8880], eax
mov eax, dword [0x5d6a14]
mov dword [0x5d70b8], eax
xor eax, eax
mov dword [0x5d6c70], eax
cmp byte [0x5d6f28], 0
je 0x536839
mov eax, dword [0x5d8440]
cmp byte [eax + 0x69], 1
jne 0x536839
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x9f8]
call fcn.0057067c
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
mov eax, dword [0x5d889c]
add eax, 0x12c
cdq
cmp edx, dword [esp + 4]
jne 0x536862
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x53688a
jmp 0x536866
pop edx
pop eax
jle 0x53688a
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, dword [0x5d889c]
add edx, 0x12c
sub edx, eax
mov dword [0x5d8894], edx
jmp 0x536ab4
xor eax, eax
mov dword [0x5d8894], eax
jmp 0x536ab4
mov ax, word [0x5d6a24]
cmp ax, 0xbc6
je 0x5368c4
cmp ax, 0xbc7
je 0x5368c4
cmp ax, 0xbca
je 0x5368c4
cmp ax, 0xbc8
je 0x5368c4
cmp ax, 0xbcb
je 0x5368c4
cmp ax, 0xbd1
jne 0x5369e3
mov eax, dword [0x5d8898]
mov dword [0x5d8894], eax
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
mov eax, dword [0x5d8898]
add eax, 0x12c
cdq
cmp edx, dword [esp + 4]
jne 0x5368f7
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x53691c
jmp 0x5368fb
pop edx
pop eax
jle 0x53691c
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, dword [0x5d8898]
add edx, 0x12c
sub edx, eax
mov dword [0x5d8894], edx
jmp 0x536923
xor eax, eax
mov dword [0x5d8894], eax
mov byte [0x5d6ccc], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6cd4], eax
cmp dword [0x5d6738], 0
jne 0x536978
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
cmp eax, 0x320
jae 0x53696c
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, 0x320
sub edx, eax
mov dword [0x5d6cd0], edx
jmp 0x536ab4
xor eax, eax
mov dword [0x5d6cd0], eax
jmp 0x536ab4
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
imul eax, dword [0x5d6738], 0xc8
push eax
mov eax, 0x320
pop edx
sub eax, edx
cdq
cmp edx, dword [esp + 4]
jne 0x5369aa
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x5369d7
jmp 0x5369ae
pop edx
pop eax
jle 0x5369d7
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
imul edx, dword [0x5d6738], 0xc8
mov ecx, 0x320
sub ecx, edx
sub ecx, eax
mov dword [0x5d6cd0], ecx
jmp 0x536ab4
xor eax, eax
mov dword [0x5d6cd0], eax
jmp 0x536ab4
mov eax, dword [0x5d8898]
mov dword [0x5d8894], eax
cmp dword [0x5d6738], 0
jne 0x536a4d
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
mov eax, dword [0x5d8898]
add eax, 0x12c
cdq
cmp edx, dword [esp + 4]
jne 0x536a1f
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x536a44
jmp 0x536a23
pop edx
pop eax
jle 0x536a44
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, dword [0x5d8898]
add edx, 0x12c
sub edx, eax
mov dword [0x5d8894], edx
jmp 0x536ab4
xor eax, eax
mov dword [0x5d8894], eax
jmp 0x536ab4
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
xor edx, edx
push edx
push eax
mov eax, dword [0x5d8898]
add eax, 0x12c
imul edx, dword [0x5d6738], 0x46
sub eax, edx
cdq
cmp edx, dword [esp + 4]
jne 0x536a7f
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x536aad
jmp 0x536a83
pop edx
pop eax
jle 0x536aad
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d70e0]
mov edx, dword [0x5d8898]
add edx, 0x12c
imul ecx, dword [0x5d6738], 0x46
sub edx, ecx
sub edx, eax
mov dword [0x5d8894], edx
jmp 0x536ab4
xor eax, eax
mov dword [0x5d8894], eax
mov eax, dword [0x5d8440]
call fcn.005cdecc
mov ax, word [0x5d6a24]
cmp ax, 0xbc6
jb 0x536ae0
cmp ax, 0xbd1
ja 0x536ae0
cmp byte [0x5d6f43], 0
je 0x536ae0
xor eax, eax
mov dword [0x5d6c70], eax
mov ax, word [0x5d6a24]
cmp ax, 0xbc3
je 0x536af6
cmp ax, 0xbc5
jne 0x536b82
xor eax, eax
mov dword [0x5d6fd8], eax
mov byte [0x5d6f45], 1
cmp dword [0x5d668c], 1
jne 0x536b76
push 0x53b7f8
lea edx, [ebp - 0x10f4]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x120]
call fcn.00408cf0
push dword [ebp - 0x10f4]
push 0x53b808
lea edx, [ebp - 0x10f8]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x122]
call fcn.00408cf0
push dword [ebp - 0x10f8]
push 0x53b814
lea eax, [ebp - 0x10f0]
mov edx, 5
call fcn.00404794
mov edx, dword [ebp - 0x10f0]
mov eax, dword [0x5d70a4]
call fcn.005b2aa0
xor eax, eax
mov dword [0x5d668c], eax
call fcn.005c83a4
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d8890], eax
mov byte [0x5d8848], 0
mov byte [0x5d70dc], 0
mov eax, dword [ebp - 0x18]
mov edx, 0x53b824
call fcn.00404820
jne case.default.0x537952
xor eax, eax
mov dword [0x5d8840], eax
mov eax, dword [ebp - 4]
call fcn.00535864
mov eax, dword [0x5d8440]
xor edx, edx
jmp 0x58d980
mov byte [0x5d70dc], 0
inc dword [0x5d70ec]
jmp case.default.0x537952
mov eax, dword [ebp - 8]
call fcn.004046d4
cmp eax, 0x10
jl case.default.0x537952
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x10
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00404934
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 8]
call fcn.004046d4
mov ecx, eax
sub ecx, 0x10
mov edx, 0x11
mov eax, dword [ebp - 8]
call fcn.00404934
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 0xc]
call fcn.004994b8
cmp byte [0x5d69ec], 0
je 0x536cb0
cmp byte [0x5d69ed], 0
jne 0x536cb0
push 0x1000
mov eax, dword [ebp - 0x10]
call fcn.004048d4
mov edx, eax
lea ecx, [ebp - 0x1089]
lea eax, [ebp - 0x78]
call fcn.00562838
test al, al
je 0x536cb0
lea eax, [ebp - 8]
lea edx, [ebp - 0x1089]
mov ecx, 0x1001
call fcn.00404684
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x10
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00404934
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 8]
call fcn.004046d4
mov ecx, eax
sub ecx, 0x10
mov edx, 0x11
mov eax, dword [ebp - 8]
call fcn.00404934
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 0xc]
call fcn.004994b8
cmp byte [0x5d69ed], 0
je 0x536d42
mov eax, dword [ebp - 4]
call dword [eax + 0x740]
test al, al
je 0x536d42
push 0x1000
lea eax, [ebp - 0x1089]
push eax
mov eax, dword [ebp - 0x10]
call fcn.004048d4
push eax
lea eax, [ebp - 0x78]
push eax
mov eax, dword [ebp - 4]
call dword [eax + 0x73c]
test al, al
je 0x536d42
lea eax, [ebp - 8]
lea edx, [ebp - 0x1089]
mov ecx, 0x1001
call fcn.00404684
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x10
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.00404934
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 8]
call fcn.004046d4
mov ecx, eax
sub ecx, 0x10
mov edx, 0x11
mov eax, dword [ebp - 8]
call fcn.00404934
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 0xc]
call fcn.004994b8
cmp dword [0x5d8440], 0
jne case.0x536deb.528
movzx eax, word [ebp - 0x74]
cmp eax, 0x20d
jg 0x536dd0
je 0x53745b
cmp eax, 0x208
jg 0x536dab
je 0x537247
cmp eax, 0x1f7
jg 0x536d94
je 0x536e31
add eax, 0xffffffce
sub eax, 2
jb case.0x536deb.528
sub eax, 0x45
je 0x5374a3
jmp case.default.0x537952
sub eax, 0x1fa
je 0x537365
dec eax
je 0x537392
jmp case.default.0x537952
sub eax, 0x209
je 0x537291
dec eax
je 0x53729e
dec eax
je 0x537424
dec eax
je 0x537431
jmp case.default.0x537952
cmp eax, 0x213
jg 0x536e06
je 0x536f15
add eax, 0xfffffdf2
cmp eax, 4
ja case.default.0x537952
jmp dword [eax*4 + 0x536df2]
sub eax, 0x214
je 0x536f25
dec eax
je 0x536f5a
sub eax, 0x7d
je case.0x536deb.528
sub eax, 0x90
je case.0x536deb.528
jmp case.default.0x537952
mov eax, dword [ebp - 0x78]
sub eax, 0xffffffff
je 0x536e57
dec eax
jne 0x536e88
push 0xffffff
mov ecx, 0xff
mov edx, 0x53b834
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp 0x536eb0
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b84c
mov eax, dword [0x5d70a4]
call fcn.005b2b94
add dword [0x5d687c], 2
jmp 0x536eb0
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b868
mov eax, dword [0x5d70a4]
call fcn.005b2b94
inc dword [0x5d687c]
cmp dword [0x5d687c], 2
jl 0x536eea
push 0xffffff
mov ecx, 0xff
mov edx, 0x53b88c
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov edx, 0x7a120
mov eax, dword [ebp - 4]
call fcn.005520f8
jmp case.0x536deb.528
push 0xffffff
mov ecx, 0xff
mov edx, 0x53b8a4
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov edx, 0x2710
mov eax, dword [ebp - 4]
call fcn.005520f8
jmp case.0x536deb.528
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053d34c
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b8b8
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [ebp - 4]
call fcn.00541850
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b8dc
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [ebp - 4]
call fcn.00541850
jmp case.0x536deb.528
xor eax, eax
mov dword [0x5d687c], eax
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b8f4
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov ax, word [ebp - 0x78]
mov word [0x5d88ec], ax
mov eax, dword [ebp - 0x78]
call fcn.004074a8
mov word [0x5d88ee], ax
mov ax, word [ebp - 0x72]
mov word [0x5d88f0], ax
mov ax, word [ebp - 0x70]
mov word [0x5d88f2], ax
cmp word [0x5d88ec], 0
jbe 0x53709d
cmp word [0x5d88ec], 1
jne 0x53702f
xor ecx, ecx
xor edx, edx
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b908
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp 0x53722a
cmp word [0x5d88ec], 3
ja 0x53722a
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
push 0x53b934
lea edx, [ebp - 0x1100]
movzx eax, word [0x5d88ec]
call fcn.00408cf0
push dword [ebp - 0x1100]
push 0x53b94c
lea eax, [ebp - 0x10fc]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x10fc]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp 0x53722a
cmp word [0x5d88f0], 0
jbe 0x537150
cmp word [0x5d88f0], 1
jne 0x5370e2
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53b970
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp 0x53722a
cmp word [0x5d88f0], 3
ja 0x53722a
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
push 0x53b998
lea edx, [ebp - 0x1108]
movzx eax, word [0x5d88f0]
call fcn.00408cf0
push dword [ebp - 0x1108]
push 0x53b9b8
lea eax, [ebp - 0x1104]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x1104]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp 0x53722a
cmp word [0x5d88f2], 0
jbe 0x5371c5
cmp word [0x5d88f2], 0x64
ja 0x53722a
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
push 0x53b9cc
lea edx, [ebp - 0x1110]
movzx eax, word [0x5d88f2]
call fcn.00408cf0
push dword [ebp - 0x1110]
push 0x53b9ec
lea eax, [ebp - 0x110c]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x110c]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp 0x53722a
cmp word [0x5d88ee], 0
jbe 0x53722a
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
push 0x53ba04
lea edx, [ebp - 0x1118]
movzx eax, word [0x5d88ee]
call fcn.00408cf0
push dword [ebp - 0x1118]
push 0x53b9ec
lea eax, [ebp - 0x1114]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x1114]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
mov eax, dword [ebp - 4]
call fcn.00541850
jmp case.0x536deb.528
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053d114
jmp case.0x536deb.528
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053d3a4
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53ba1c
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov edx, 0x2710
mov eax, dword [ebp - 4]
call fcn.005520f8
jmp case.default.0x537952
mov eax, dword [ebp - 4]
call fcn.00532838
jmp case.0x536deb.528
mov eax, dword [ebp - 0x78]
sub eax, 2
je 0x5372b1
dec eax
je 0x5372de
dec eax
je 0x53730b
jmp 0x537338
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53ba48
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53ba68
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bac0
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53ba68
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bae8
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
mov eax, dword [ebp - 0x78]
sub eax, 0xfffffffe
je 0x5373ca
dec eax
jne 0x5373f7
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bb00
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bb24
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bb48
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
mov eax, dword [ebp - 4]
call fcn.00532838
jmp case.0x536deb.528
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bb6c
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.0x536deb.528
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x368]
xor edx, edx
call fcn.004381ac
mov eax, dword [ebp - 4]
mov byte [eax + 0x97c], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053d6c8
jmp case.default.0x537952
push 0xffffff
mov ecx, 0xff
mov edx, 0x53bbbc
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bbe0
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
cmp byte [0x5d8849], 0
je 0x5375d8
cmp word [ebp - 0x74], 0x27a
jne case.default.0x537952
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0x9c8], edx
mov edx, dword [ebp - 0x74]
mov dword [eax + 0x9cc], edx
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x9d0], edx
mov eax, dword [ebp - 4]
add eax, 0x9a4
mov edx, dword [0x5d6cb4]
call fcn.00404468
mov eax, 0x5d6cb4
call fcn.00404414
lea edx, [ebp - 0x111c]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x111c]
mov eax, dword [ebp - 4]
add eax, 0x9d4
call fcn.00404468
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d884c], eax
mov byte [0x5d884a], 1
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x120]
mov dword [0x5d6f98], eax
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x122]
mov dword [0x5d6f9c], eax
lea eax, [ebp - 0x121c]
mov edx, dword [0x5d70c4]
mov ecx, 0xff
call fcn.004046b0
lea edx, [ebp - 0x121c]
mov eax, 0x5d6f74
mov cl, 0x14
call fcn.00402d00
lea eax, [ebp - 0x121c]
mov edx, dword [0x5d70ac]
mov edx, dword [edx + 0x7c]
mov ecx, 0xff
call fcn.004046b0
lea edx, [ebp - 0x121c]
mov eax, 0x5d6f89
mov cl, 0xa
call fcn.00402d00
mov eax, dword [ebp - 4]
call fcn.0053c220
jmp case.default.0x537952
movzx eax, word [ebp - 0x74]
jmp 0x58dea0
jg 0x537868
je 0x53a93a
cmp eax, 0xca
jg 0x53773c
je 0x53a0ae
cmp eax, 0x21
jg 0x53768c
je 0x539110
add eax, 0xfffffffa
cmp eax, 0x1a
ja case.default.0x537952
jmp dword [eax*4 + 0x537620]
cmp eax, 0x34
jg 0x5376f2
je 0x5391e1
add eax, 0xffffffde
cmp eax, 0x11
ja case.default.0x537952
jmp dword [eax*4 + 0x5376aa]
cmp eax, 0x67
jg 0x53771e
je 0x539962
sub eax, 0x35
je 0x5397dc
dec eax
je 0x537e90
add eax, 0xffffffd2
sub eax, 3
jb 0x539ba4
jmp case.default.0x537952
sub eax, 0x68
je 0x539ba4
sub eax, 0x60
je 0x53a07e
dec eax
je 0x53a08e
jmp case.default.0x537952
cmp eax, 0x26c
jg 0x5377e7
je 0x53a451
cmp eax, 0x262
jg 0x5377ae
je 0x53a12c
cmp eax, 0xf1
jg 0x53778e
je 0x538536
sub eax, 0xcb
je 0x53a09e
sub eax, 7
je 0x53a7b5
dec eax
je 0x53a7cf
dec eax
je 0x53a7e9
jmp case.default.0x537952
sub eax, 0x210
je 0x538aae
sub eax, 0x48
je 0x53a0ce
dec eax
je 0x53a0ef
jmp case.default.0x537952
add eax, 0xfffffd9d
cmp eax, 8
ja case.default.0x537952
jmp dword [eax*4 + 0x5377c3]
add eax, 0xfffffd93
cmp eax, 0x1a
ja case.default.0x537952
jmp dword [eax*4 + 0x5377fc]
cmp eax, 0x2af
jg 0x537926
je 0x53b596
add eax, 0xfffffd77
cmp eax, 0x25
ja case.default.0x537952
jmp dword [eax*4 + 0x53788e]
cmp eax, 0x324
jg 0x5379d6
je 0x53a016
cmp eax, 0x2c8
jg 0x537989
je 0x53a8b8
add eax, 0xfffffd44
cmp eax, 0xb
ja case.default.0x537952
jmp dword [eax*4 + 0x537959]
cmp eax, 0x2ff
jg 0x5379b6
je 0x53a866
sub eax, 0x2ef
je 0x53b5f6
dec eax
je 0x53967d
sub eax, 0xe
je 0x537eed
jmp case.default.0x537952
sub eax, 0x304
je 0x53b65c
sub eax, 0x1d
je 0x53855a
dec eax
je 0x537e73
jmp case.default.0x537952
cmp eax, 0x820
jg 0x537a3c
je 0x53aa54
cmp eax, 0x415
jg 0x537a17
je 0x53859a
sub eax, 0x325
je 0x53a06c
add eax, 0xffffff14
sub eax, 2
jb 0x53829d
sub eax, 2
jb 0x5382e3
jmp case.default.0x537952
sub eax, 0x450
je 0x539906
sub eax, 0x60
je 0x538020
add eax, 0xffffffe8
sub eax, 2
jb case.0x537619.30
jmp case.default.0x537952
cmp eax, 0x859
jg 0x537a69
je 0x53b606
sub eax, 0x821
je case.0x537887.669
dec eax
je case.0x537887.670
sub eax, 0x1a
je 0x53b1b0
jmp case.default.0x537952
sub eax, 0x85b
je 0x53b69b
dec eax
je 0x53b6b0
sub eax, 0xf58c
je 0x5392ee
jmp case.default.0x537952
mov byte [0x5d70dc], 0
mov byte [0x5d8848], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x630]
xor edx, edx
call fcn.004c2dc0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x634]
xor edx, edx
call fcn.00465430
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov dl, 1
call fcn.00465430
mov eax, 0x5d70c4
call fcn.00404414
mov eax, 0x5d70c8
call fcn.00404414
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [0x5d70ac]
mov dword [eax + 0x54], 0xffffffff
mov eax, dword [0x5d70ac]
mov dword [eax + 0x58], 0xffffffff
mov eax, dword [ebp - 4]
call fcn.00534f24
mov ecx, dword [ebp - 0x20]
mov edx, 0x53bc04
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
push 0
push 0
mov eax, dword [ebp - 0x20]
push eax
xor ecx, ecx
mov edx, 0x33
mov eax, dword [0x5d70f0]
call fcn.005b54e0
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d884c], eax
jmp case.default.0x537952
push 0x53bc18
mov ecx, dword [0x5d6d34]
xor edx, edx
mov eax, 0x10
call fcn.0055d66c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6ac]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x64]
xor eax, eax
mov dword [0x5d69fc], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6a00], eax
mov eax, dword [0x5d69fc]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x1220]
call fcn.00408ddc
mov ecx, dword [ebp - 0x1220]
mov edx, 0x53bc2c
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b80], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b68], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov dl, 1
call fcn.004381ac
mov byte [0x5d6b98], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x9f0], 0
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x9fc], eax
xor eax, eax
mov dword [0x5d8818], eax
xor eax, eax
mov dword [0x5d881c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov dl, 1
call fcn.00465430
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x634]
xor edx, edx
call fcn.00465430
lea edx, [ebp - 0x88]
mov ecx, 0x10
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0x32
mov eax, dword [0x5d70f0]
call fcn.005b54e0
mov eax, dword [0x5d88b8]
mov edx, dword [eax]
call dword [edx + 0x44]
mov byte [0x5d6dad], 0
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00534df0
mov byte [0x5d6b91], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b94], eax
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x51
mov eax, dword [ebp - 4]
call fcn.00533510
mov byte [0x5d70fc], 0
xor eax, eax
push ebp
push 0x537e69
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call dword [0x5d8c14]
nop
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push case.default.0x537952
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x418]
cmp byte [eax + 0x38], 0
jne 0x537ced
mov eax, dword [ebp - 4]
cmp byte [eax + 0x70d], 0
je 0x537cfb
mov eax, dword [0x5d6fc8]
cmp byte [eax + 0x86c], 0
je 0x537d09
mov eax, dword [0x5d6fc8]
cmp byte [eax + 0x86c], 0
je 0x537d2b
mov eax, dword [ebp - 4]
mov byte [eax + 0x70d], 0
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x710], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x70c], 1
cmp byte [0x5d6aa0], 0
je 0x537d93
lea edx, [ebp - 0x1224]
mov eax, dword [0x5d6a98]
call fcn.00408a54
cmp dword [ebp - 0x1224], 0
je 0x537d93
xor eax, eax
mov dword [0x5d6a94], eax
lea edx, [ebp - 0x1228]
mov eax, dword [0x5d6a98]
call fcn.00408a54
mov edx, dword [ebp - 0x1228]
mov eax, dword [ebp - 4]
add eax, 0xa04
call fcn.00404468
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xa08], edx
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6870], eax
mov byte [0x5d686c], 1
mov al, byte [0x5d6aa2]
and al, byte [0x5d6aa3]
je 0x537e3e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x600]
mov edx, dword [0x5d6d0c]
call fcn.00498c68
push 0xffffff
mov ecx, 0xff
mov edx, 0x53bc40
mov eax, dword [0x5d70a4]
call fcn.005b2b94
xor eax, eax
push ebp
push 0x537df9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x600]
mov dl, 1
call fcn.00498b18
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x537e3e
cmp byte [0x5d6aa2], 0
je 0x537e68
cmp byte [0x5d6aa3], 0
jne 0x537e68
push 0
mov ecx, dword [0x5d6d34]
mov edx, dword [0x5d6d10]
mov eax, 0x66
call fcn.0055d66c
ret
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053d888
jmp case.default.0x537952
mov eax, dword [ebp - 0x78]
mov dword [0x5d883c], eax
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053da48
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70d0], eax
movsx edx, word [ebp - 0x72]
mov eax, dword [ebp - 4]
call fcn.00541324
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70d0], eax
push 0xffffff
mov ecx, 0x8000
mov edx, 0x53bc78
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov dword [0x5d8854], 0xffffffff
jmp case.default.0x537952
movsx eax, word [ebp - 0x72]
mov dword [0x5d87f8], eax
jmp case.default.0x537952
push 0x40255555
push 0x55555555
call fcn.00492a58
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
cmp ebx, eax
jge 0x537f6b
lea eax, [ebp - 0x14]
push eax
push 0x40255555
push 0x55555555
call fcn.00492a58
inc eax
push eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
mov ecx, eax
mov eax, dword [ebp - 0x10]
pop edx
call fcn.00404934
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
call fcn.0049956c
push 0
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 0x10ec], 0x2f
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
jmp 0x537f73
lea eax, [ebp - 0x1c]
call fcn.00404414
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0xa
mov eax, dword [0x5d70f0]
call fcn.005b54e0
cmp dword [ebp - 0x1c], 0
je case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
push 0
lea eax, [ebp - 0x1230]
push eax
mov byte [ebp - 0x10ec], 0x5c
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
mov edx, dword [ebp - 0x1230]
lea eax, [esi + 0x7c]
call fcn.00404468
mov edx, dword [ebp - 0x24]
mov eax, esi
call fcn.005cd774
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00492e50
mov edx, eax
mov eax, esi
call fcn.005cf328
jmp case.default.0x537952
lea eax, [ebp - 0x10af]
mov edx, 0x26
call fcn.004074c4
mov eax, dword [ebp - 0x10]
call fcn.004046d4
lea ebx, [eax + eax*2]
test ebx, ebx
jns 0x538042
add ebx, 3
sar ebx, 2
mov eax, dword [ebp - 0x10]
call fcn.004046d4
lea eax, [eax + eax*2]
and eax, 0x80000003
jns 0x53805c
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jle 0x538061
inc ebx
lea edx, [ebp - 0x10af]
mov ecx, ebx
mov eax, dword [ebp - 0x10]
call fcn.00499604
lea eax, [ebp - 0x60]
call fcn.00404414
xor ebx, ebx
mov al, byte [ebp + ebx - 0x109e]
mov byte [ebp - 0x59], al
mov cl, byte [ebp - 0x109f]
shl byte [ebp - 0x59], cl
mov al, byte [ebp + ebx - 0x109d]
mov cl, byte [ebp - 0x109f]
and eax, 0xff
shr eax, cl
or byte [ebp - 0x59], al
lea eax, [ebp - 0x1234]
mov dl, byte [ebp - 0x59]
call fcn.004045fc
mov edx, dword [ebp - 0x1234]
lea eax, [ebp - 0x60]
call fcn.004046dc
inc ebx
cmp ebx, 0xf
jl 0x53807b
mov eax, dword [ebp - 0x60]
call fcn.004048d4
mov edx, eax
lea eax, [ebp - 0x121c]
call fcn.00402f80
lea edx, [ebp - 0x121c]
lea eax, [ebp - 0x123c]
call fcn.00404678
mov ecx, dword [ebp - 0x123c]
lea eax, [ebp - 0x1238]
mov edx, 0x53bc9c
call fcn.00404720
mov ecx, dword [ebp - 0x1238]
xor edx, edx
mov eax, dword [0x5d66e4]
mov ebx, dword [eax]
call dword [ebx + 0x60]
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d66e8], eax
mov dword [0x5d66ec], 0x1f4
mov byte [0x5d66f0], 1
push 0xffffff
lea edx, [ebp - 0x1244]
xor eax, eax
mov al, byte [ebp - 0x10af]
call fcn.00408cf0
mov ecx, dword [ebp - 0x1244]
lea eax, [ebp - 0x1240]
mov edx, 0x53bca8
call fcn.00404720
mov edx, dword [ebp - 0x1240]
mov ecx, 0xff
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
push 0x40255555
push 0x55555555
call fcn.00492a58
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
cmp ebx, eax
jge 0x5381e8
lea eax, [ebp - 0x14]
push eax
push 0x40255555
push 0x55555555
call fcn.00492a58
inc eax
push eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
mov ecx, eax
mov eax, dword [ebp - 0x10]
pop edx
call fcn.00404934
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
call fcn.0049956c
push 0
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 0x10ec], 0x2f
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
jmp 0x5381f0
lea eax, [ebp - 0x1c]
call fcn.00404414
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 9
mov eax, dword [0x5d70f0]
call fcn.005b54e0
cmp dword [ebp - 0x1c], 0
je case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
push 0
lea eax, [ebp - 0x1248]
push eax
mov byte [ebp - 0x10ec], 0x5c
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
mov edx, dword [ebp - 0x1248]
lea eax, [esi + 0x7c]
call fcn.00404468
mov edx, dword [ebp - 0x24]
mov eax, esi
call fcn.005cd774
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00492e50
mov edx, eax
mov eax, esi
call fcn.005cf328
jmp case.default.0x537952
cmp dword [0x5d8440], 0
je case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
push 0
push 0
push 0
push 0
movzx edx, word [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
push 0x40255555
push 0x55555555
call fcn.00492a58
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
cmp ebx, eax
jge 0x538353
lea eax, [ebp - 0x14]
push eax
push 0x40255555
push 0x55555555
call fcn.00492a58
inc eax
push eax
mov eax, dword [ebp - 0x10]
call fcn.004046d4
mov ecx, eax
mov eax, dword [ebp - 0x10]
pop edx
call fcn.00404934
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
call fcn.0049956c
push 0
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 0x10ec], 0x2f
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
jmp 0x53835b
lea eax, [ebp - 0x1c]
call fcn.00404414
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp dword [0x5d8440], 0
je 0x5383c4
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je 0x5383c4
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je 0x5383a1
mov edx, dword [esi + 0x60]
mov eax, dword [0x5d70f0]
call fcn.005b5288
mov ax, word [ebp - 0x70]
push eax
mov ax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
mov cx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b5070
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
movzx edx, word [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b54e0
cmp dword [ebp - 0x1c], 0
je case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
push 0
lea eax, [ebp - 0x124c]
push eax
mov byte [ebp - 0x10ec], 0x5c
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
call fcn.00492f78
mov edx, dword [ebp - 0x124c]
lea eax, [esi + 0x7c]
call fcn.00404468
mov edx, dword [ebp - 0x24]
mov eax, esi
call fcn.005cd774
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00492e50
mov edx, eax
mov eax, esi
call fcn.005cf328
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp dword [0x5d8440], 0
je 0x538486
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
jne 0x538494
cmp word [ebp - 0x74], 6
je 0x538494
cmp word [ebp - 0x74], 7
jne 0x5384be
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
movzx edx, word [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b54e0
cmp word [ebp - 0x74], 6
jne case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d8888], eax
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp dword [0x5d8440], 0
je case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0xd
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
cmp byte [0x5d84ae], 0
je case.default.0x537952
mov ax, word [ebp - 0x78]
mov word [0x5d84de], ax
mov eax, dword [ebp - 4]
call fcn.00545a6c
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0xa
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
mov eax, dword [ebp - 4]
call fcn.00535864
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0xa
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp dword [0x5d8440], 0
je case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
push 0
push 0
push 0
push 0
movsx ecx, word [ebp - 0x72]
mov dx, 0xc
mov eax, esi
call fcn.005cc4e8
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp dword [0x5d8440], 0
je case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
push 0
push 0
push 0
push 0
movsx ecx, word [ebp - 0x72]
mov dx, 0xc
mov eax, esi
call fcn.005cc4e8
jmp case.default.0x537952
cmp dword [0x5d8440], 0
je case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
movsx eax, word [ebp - 0x6e]
mov edx, dword [0x5d3974]
mov edi, dword [edx + eax*4]
movsx eax, word [ebp - 0x72]
add edi, eax
movsx eax, word [ebp - 0x6e]
mov edx, dword [0x5d3858]
mov eax, dword [edx + eax*4]
movsx edx, word [ebp - 0x70]
add eax, edx
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
movsx eax, word [ebp - 0x6e]
mov edx, dword [0x5d3974]
mov ebx, dword [edx + eax*4]
add ebx, edi
movsx eax, word [ebp - 0x6e]
mov edx, dword [0x5d3858]
mov eax, dword [edx + eax*4]
add eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
test esi, esi
je 0x53876a
cmp byte [esi + 0x57], 0
je 0x53876a
mov ecx, dword [ebp - 0x4c]
mov edx, edi
mov eax, dword [0x5d70f0]
call fcn.005b4fc4
mov dword [0x5d879c], eax
cmp dword [0x5d879c], 0
jne case.default.0x537952
mov eax, dword [0x5d6788]
mov dword [0x5d879c], eax
jmp case.default.0x537952
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x122]
push eax
mov eax, dword [0x5d8440]
movzx ecx, word [eax + 0x120]
mov edx, dword [ebp - 0x4c]
mov eax, edi
call fcn.005c40a0
cmp eax, 2
jg case.default.0x537952
mov edx, dword [ebp - 0x4c]
mov eax, edi
call fcn.005c83a0
test al, al
jne case.default.0x537952
test esi, esi
je case.default.0x537952
mov ecx, dword [ebp - 0x4c]
mov edx, edi
mov eax, dword [0x5d70f0]
call fcn.005b4fc4
cmp eax, dword [0x5d8440]
je 0x5387e9
cmp word [ebp - 0x74], 0x13
jne 0x538853
mov ecx, dword [ebp - 0x50]
mov edx, ebx
mov eax, dword [0x5d70f0]
call fcn.005b4fc4
cmp eax, dword [0x5d8440]
jne 0x538853
mov dword [0x5d6770], esi
mov dword [0x5d676c], 1
mov eax, dword [0x5d8440]
mov ax, word [eax + 0x98]
mov word [ebp - 0x72], ax
mov eax, dword [0x5d8440]
mov ax, word [eax + 0x9c]
mov word [ebp - 0x70], ax
mov eax, dword [0x5d8440]
mov ax, word [eax + 0xc8]
mov word [ebp - 0x6e], ax
cmp word [ebp - 0x6e], 0
jle 0x538846
lea eax, [ebp - 0x78]
push eax
push 1
mov ecx, esi
mov edx, dword [0x5d8440]
mov eax, dword [ebp - 4]
call fcn.0054f2f0
mov eax, dword [0x5d8440]
xor edx, edx
mov dword [eax + 0xc8], edx
cmp byte [esi + 0x54], 0
je case.default.0x537952
cmp byte [esi + 0xd], 0
je 0x538869
inc dword [0x5d68ec]
cmp dword [0x5d68ec], 0
jle 0x538960
mov ecx, dword [ebp - 0x4c]
mov edx, edi
mov eax, dword [0x5d70f0]
call fcn.005b4fc4
mov ebx, eax
test ebx, ebx
jne 0x538960
cmp dword [0x5d68f0], 0
jne 0x5388ae
mov dword [0x5d68f4], edi
mov eax, dword [ebp - 0x4c]
mov dword [0x5d68f8], eax
inc dword [0x5d68f0]
jmp 0x5388cf
cmp edi, dword [0x5d68f4]
jne 0x5388c8
mov eax, dword [0x5d68f8]
cmp eax, dword [ebp - 0x4c]
jne 0x5388c8
inc dword [0x5d68f0]
jmp 0x5388cf
xor eax, eax
mov dword [0x5d68f0], eax
cmp dword [0x5d68f0], 1
jle 0x538960
xor eax, eax
mov dword [0x5d68f0], eax
mov ecx, dword [0x5d68f8]
mov edx, dword [0x5d68f4]
mov eax, dword [0x5d8440]
call fcn.005cdfc8
push 0xffffff
push 0x53bcbc
lea edx, [ebp - 0x1254]
mov eax, dword [0x5d68f4]
call fcn.00408cf0
push dword [ebp - 0x1254]
push 0x53b808
lea edx, [ebp - 0x1258]
mov eax, dword [0x5d68f8]
call fcn.00408cf0
push dword [ebp - 0x1258]
lea eax, [ebp - 0x1250]
mov edx, 4
call fcn.00404794
mov edx, dword [ebp - 0x1250]
mov ecx, 0xff
mov eax, dword [0x5d70a4]
call fcn.005b2b94
xor eax, eax
mov dword [0x5d68ec], eax
mov byte [esi + 0xd], 0
jmp case.default.0x537952
lea edx, [ebp - 0x58]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
push 0
push 0
push 0
push 0
movsx ecx, word [ebp - 0x72]
mov dx, word [ebp - 0x74]
mov eax, esi
call fcn.005cc4e8
movzx eax, word [ebp - 0x58]
mov dword [esi + 0xd4], eax
movzx eax, word [ebp - 0x56]
mov dword [esi + 0xd8], eax
mov dx, word [ebp - 0x52]
mov ax, word [ebp - 0x54]
call fcn.0040749c
mov dword [esi + 0xdc], eax
mov eax, dword [esi + 0xdc]
mov edx, dword [0x5d8440]
cmp eax, dword [edx + 0x60]
jne case.default.0x537952
mov dword [0x5d6770], esi
mov dword [0x5d676c], 1
mov eax, dword [0x5d8440]
mov ax, word [eax + 0x98]
mov word [ebp - 0x72], ax
mov eax, dword [0x5d8440]
mov ax, word [eax + 0x9c]
mov word [ebp - 0x70], ax
mov eax, dword [0x5d8440]
mov ax, word [eax + 0xc8]
mov word [ebp - 0x6e], ax
cmp word [ebp - 0x6e], 0
jle 0x538a4a
lea eax, [ebp - 0x78]
push eax
push 1
mov ecx, esi
mov edx, dword [0x5d8440]
mov eax, dword [ebp - 4]
call fcn.0054f2f0
mov eax, dword [0x5d8440]
xor edx, edx
mov dword [eax + 0xc8], edx
jmp case.default.0x537952
lea edx, [ebp - 0x38]
mov ecx, 4
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov ax, word [ebp - 0x6e]
call fcn.004074ac
and eax, 0xff
push eax
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x38]
push eax
xor ecx, ecx
mov cl, byte [ebp - 0x6e]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00551e58
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0055208c
jmp case.default.0x537952
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bce4
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov edx, 0xea60
mov eax, dword [ebp - 4]
call fcn.005520f8
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [0x5d6b68]
cmp eax, 0x1f4
jbe 0x538b01
mov byte [0x5d6a78], 0
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
cmp esi, dword [0x5d6770]
jne 0x538b2f
xor eax, eax
mov dword [0x5d6770], eax
xor ebx, ebx
test esi, esi
je 0x538b4f
mov edx, dword [esi + 0x104]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov ebx, eax
xor eax, eax
mov dword [esi + 0x10c], eax
lea eax, [ebp - 0x1c]
mov edx, 0x53bd04
call fcn.004044ac
test ebx, ebx
je 0x538b91
lea eax, [ebp - 0x1c]
mov edx, dword [ebx + 0x11c]
call fcn.004044ac
cmp byte [ebx + 0x56], 0
je 0x538b91
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x125c]
push eax
mov ecx, 0x53bd14
mov edx, 0x53bd20
mov eax, dword [ebp - 0x1c]
call fcn.004932b4
test esi, esi
je 0x5390e0
mov byte [esi + 0x78], 1
mov eax, dword [0x5d8388]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x538d53
inc eax
mov dword [ebp - 0x64], eax
xor ebx, ebx
mov edx, ebx
mov eax, dword [0x5d8388]
call fcn.00419afc
mov edi, eax
cmp byte [edi + 0x45], 0
je 0x538d45
mov eax, dword [edi + 8]
push eax
mov ecx, dword [edi + 4]
movzx edx, word [esi + 0x122]
movzx eax, word [esi + 0x120]
call fcn.005c40a0
cmp eax, 2
jg 0x538d45
movzx eax, word [esi + 0x122]
push eax
movzx ecx, word [esi + 0x120]
mov eax, dword [0x5d8440]
movzx edx, word [eax + 0x122]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x120]
call fcn.005c40a0
cmp eax, 6
jle 0x538c4a
movzx edx, word [esi + 0x122]
movzx eax, word [esi + 0x120]
mov ecx, 2
call fcn.005c4e48
test al, al
je 0x538c4a
cmp dword [edi + 0x3d], 2
jge 0x538c4a
call sub.kernel32.dll_GetTickCount_1
mov dword [edi + 0x35], eax
lea eax, [edi + 0x46]
mov edx, dword [ebp - 0x1c]
call fcn.00404468
mov eax, dword [ebp - 0x1c]
mov edx, dword [0x5d8440]
mov edx, dword [edx + 0x11c]
call fcn.00404820
jne 0x538d2e
movzx eax, word [esi + 0x122]
push eax
movzx ecx, word [esi + 0x120]
mov eax, dword [0x5d8440]
movzx edx, word [eax + 0x122]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x120]
call fcn.005c40a0
cmp eax, 6
jg 0x538d2e
cmp dword [edi + 0x3d], 2
jne 0x538d45
lea eax, [ebp - 0x1260]
lea edx, [edi + 0xc]
call fcn.00404678
mov edx, dword [ebp - 0x1260]
mov eax, dword [0x5d70f0]
call fcn.005b6dbc
test al, al
je 0x538d45
push 0xff
push 0x64
mov edx, 0x53bd24
lea eax, [ebp - 0x1298]
call fcn.00402cf4
lea edx, [edi + 0xc]
lea eax, [ebp - 0x1298]
mov cl, 0x31
call fcn.00402cc4
lea edx, [ebp - 0x1298]
lea eax, [ebp - 0x1264]
call fcn.00404678
mov edx, dword [ebp - 0x1264]
mov ecx, 0xffffff
mov eax, dword [0x5d70a4]
call fcn.005b364c
cmp dword [0x5d87b8], 0
jne 0x538d45
mov dword [0x5d87b8], edi
jmp 0x538d45
cmp byte [0x5d6bb4], 0
je 0x538d45
cmp dword [edi + 0x3d], 2
je 0x538d45
call sub.kernel32.dll_GetTickCount_1
mov dword [edi + 0x35], eax
mov byte [edi + 0x45], 0
inc ebx
dec dword [ebp - 0x64]
jne 0x538bb4
cmp byte [0x5d6a78], 0
je 0x538da1
mov edx, dword [esi + 0x11c]
mov ecx, dword [0x5d6ba4]
mov eax, dword [0x5d6d48]
call fcn.005cbc7c
mov edx, dword [esi + 0x11c]
mov eax, 0x5d87c8
mov ecx, 0x53bd38
call fcn.00404720
push 0xffffff
mov ecx, 0x8000
mov edx, dword [0x5d87c8]
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d6a78], 0
cmp esi, dword [0x5d8794]
jne 0x538db7
xor eax, eax
mov dword [0x5d8794], eax
cmp esi, dword [0x5d8784]
jne 0x538e58
xor eax, eax
mov dword [0x5d6fdc], eax
xor eax, eax
mov dword [0x5d6fe0], eax
xor eax, eax
mov dword [0x5d6fe4], eax
mov byte [0x5d703d], 0
mov eax, 0x5d6ee8
mov edx, 0x53bd48
call fcn.00404468
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6eec], eax
xor eax, eax
mov dword [0x5d8784], eax
xor eax, eax
mov dword [0x5d6bbc], eax
cmp byte [0x5d69dc], 0
je 0x538e3a
mov byte [0x5d69dc], 0
mov al, byte [0x5d678d]
mov byte [0x5d703c], al
xor eax, eax
mov dword [0x5d8784], eax
xor edx, edx
mov eax, dword [0x5d8440]
call fcn.005cf318
xor eax, eax
mov dword [0x5d6794], eax
cmp dword [0x5d6fd0], 3
jne 0x5390ad
xor edx, edx
mov eax, dword [0x5d8440]
call fcn.005cf318
jmp 0x5390ad
cmp esi, dword [0x5d879c]
jne 0x538e6c
xor eax, eax
mov dword [0x5d879c], eax
jmp 0x5390ad
cmp esi, dword [0x5d8440]
jne 0x538fba
cmp byte [0x5d6928], 0
je 0x538f7e
fld qword [0x5d6934]
fcomp dword [0x53bd54]
fnstsw ax
sahf
jne 0x538ea4
call fcn.0040adbc
fstp qword [0x5d6934]
wait
jmp 0x538eef
push dword [0x5d6938]
push dword [0x5d6934]
call fcn.0040adbc
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.00499920
push edx
push eax
mov eax, dword [0x5d692c]
cdq
cmp edx, dword [esp + 4]
jne 0x538ed8
cmp eax, dword [esp]
pop edx
pop eax
jae 0x538eef
jmp 0x538edc
pop edx
pop eax
jge 0x538eef
call fcn.0040adbc
fstp qword [0x5d6934]
wait
xor eax, eax
mov dword [0x5d693c], eax
inc dword [0x5d693c]
mov eax, dword [0x5d693c]
cmp eax, dword [0x5d6930]
jl 0x538f7e
push 0xff0000
push 0x53bd60
lea edx, [ebp - 0x12a0]
mov eax, dword [0x5d692c]
call fcn.00408cf0
push dword [ebp - 0x12a0]
push 0x53bd6c
lea edx, [ebp - 0x12a4]
mov eax, dword [0x5d693c]
call fcn.00408cf0
push dword [ebp - 0x12a4]
push 0x53bd84
lea eax, [ebp - 0x129c]
mov edx, 5
call fcn.00404794
mov edx, dword [ebp - 0x129c]
mov ecx, 0xffffff
mov eax, dword [0x5d70a4]
call fcn.005b2b94
xor eax, eax
mov dword [0x5d693c], eax
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
call fcn.0055752c
jmp case.default.0x537952
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.00532100
mov eax, dword [0x5d8440]
mov byte [eax + 0x78], 1
mov byte [0x5d6a34], 1
mov eax, 0x5d6948
mov edx, 0x53bd9c
call fcn.00404468
mov edx, 0x1770
mov eax, dword [ebp - 4]
call fcn.00551474
jmp case.default.0x537952
push 0x53bd20
mov eax, dword [ebp - 4]
push dword [eax + 0xa1c]
push 0x53bd14
lea eax, [ebp - 0x12a8]
mov edx, 3
call fcn.00404794
mov eax, dword [ebp - 0x12a8]
mov edx, dword [esi + 0x11c]
call fcn.00404a18
test eax, eax
jg 0x53901c
mov eax, dword [esi + 0x11c]
mov edx, dword [0x5d6ebc]
call fcn.00404820
je 0x53901c
mov eax, dword [esi + 0x11c]
mov edx, dword [0x5d6ec0]
call fcn.00404820
jne 0x5390ad
push 0xff
push 0x53bdb0
push dword [ebp - 0x1c]
push 0x53bdc4
lea eax, [ebp - 0x12ac]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x12ac]
mov ecx, 0xffffff
mov eax, dword [0x5d70a4]
call fcn.005b2b94
cmp byte [0x5d6eb0], 0
je 0x539081
mov edx, dword [esi + 0x11c]
mov eax, dword [0x5d6ebc]
call fcn.00404a18
test eax, eax
jle 0x539081
call sub.kernel32.dll_GetTickCount_1
sub eax, 0x9c40
mov dword [0x5d6ed8], eax
jmp 0x5390ad
cmp byte [0x5d6eb1], 0
je 0x5390ad
mov edx, dword [esi + 0x11c]
mov eax, dword [0x5d6ec0]
call fcn.00404a18
test eax, eax
jle 0x5390ad
call sub.kernel32.dll_GetTickCount_1
sub eax, 0x9c40
mov dword [0x5d6edc], eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
push 0
movsx ecx, word [ebp - 0x72]
mov dx, word [ebp - 0x74]
mov eax, esi
call fcn.005cc4e8
xor edx, edx
mov eax, esi
call fcn.005cecd4
jmp case.default.0x537952
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0x20
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0x21
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0x1b
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
mov ax, word [ebp - 0x78]
mov word [0x5d84de], ax
cmp byte [0x5d67a0], 0
je case.default.0x537952
mov eax, dword [ebp - 0x78]
cmp eax, dword [0x5d67a4]
jge case.default.0x537952
push 0xffffff
mov ecx, 0xff
mov edx, 0x53bdd4
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.0054d358
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x72]
mov byte [eax + 0x69], dl
mov eax, dword [0x5d8440]
lea edx, [eax + 0x8c]
mov ecx, 0x28
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov eax, dword [0x5d8440]
add eax, 0xb4
mov edx, 0xb
call fcn.004074c4
lea edx, [ebp - 0x12b0]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x98]
call fcn.00408cf0
mov ecx, dword [ebp - 0x12b0]
mov edx, 0x53bdf8
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
lea edx, [ebp - 0x12b4]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x9a]
call fcn.00408cf0
mov ecx, dword [ebp - 0x12b4]
mov edx, 0x53be04
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
mov eax, dword [ebp - 4]
call fcn.005418f0
mov eax, dword [0x5d6d48]
cmp byte [eax + 0x20], 0
jne case.default.0x537952
mov eax, dword [0x5d6d48]
mov byte [eax + 0x20], 1
call fcn.0040adbc
mov eax, dword [0x5d6d48]
fstp qword [eax + 8]
wait
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xa4]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x18], eax
mov eax, dword [0x5d8440]
movzx eax, byte [eax + 0x8c]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x14], eax
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xcc]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x1c], eax
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x72]
mov byte [eax + 0x69], dl
lea edx, [ebp - 0x10e1]
mov ecx, 0x32
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov eax, dword [0x5d8440]
add eax, 0x8c
mov edx, 0x28
call fcn.004074c4
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x10e1]
mov byte [eax + 0x8c], dl
mov ax, word [ebp - 0x10e1]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb4], al
mov dl, byte [ebp - 0x10dd]
mov al, byte [ebp - 0x10df]
call fcn.00407488
mov edx, dword [0x5d8440]
mov word [edx + 0x8e], ax
mov ax, word [ebp - 0x10df]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb5], al
mov ax, word [ebp - 0x10dd]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb6], al
mov dl, byte [ebp - 0x10d9]
mov al, byte [ebp - 0x10db]
call fcn.00407488
mov edx, dword [0x5d8440]
mov word [edx + 0x90], ax
mov ax, word [ebp - 0x10db]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb7], al
mov ax, word [ebp - 0x10d9]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb8], al
mov dl, byte [ebp - 0x10d5]
mov al, byte [ebp - 0x10d7]
call fcn.00407488
mov edx, dword [0x5d8440]
mov word [edx + 0x92], ax
mov ax, word [ebp - 0x10d7]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xb9], al
mov ax, word [ebp - 0x10d5]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xba], al
mov dl, byte [ebp - 0x10d1]
mov al, byte [ebp - 0x10d3]
call fcn.00407488
mov edx, dword [0x5d8440]
mov word [edx + 0x94], ax
mov ax, word [ebp - 0x10d3]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xbb], al
mov ax, word [ebp - 0x10d1]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xbc], al
mov dl, byte [ebp - 0x10cd]
mov al, byte [ebp - 0x10cf]
call fcn.00407488
mov edx, dword [0x5d8440]
mov word [edx + 0x96], ax
mov ax, word [ebp - 0x10cf]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xbd], al
mov ax, word [ebp - 0x10cd]
call fcn.004074ac
mov edx, dword [0x5d8440]
mov byte [edx + 0xbe], al
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10cb]
mov word [eax + 0x98], dx
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10c9]
mov word [eax + 0x9a], dx
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10c7]
mov word [eax + 0x9c], dx
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10c5]
mov word [eax + 0x9e], dx
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x10c3]
mov dword [eax + 0xa4], edx
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x10bf]
mov dword [eax + 0xa8], edx
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10bb]
mov word [eax + 0xac], dx
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x10b9]
mov word [eax + 0xae], dx
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x10b7]
mov byte [eax + 0xb0], dl
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x10b5]
mov byte [eax + 0xb1], dl
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x10b3]
mov byte [eax + 0xb2], dl
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x10b1]
mov byte [eax + 0xb3], dl
lea edx, [ebp - 0x12b8]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x98]
call fcn.00408cf0
mov ecx, dword [ebp - 0x12b8]
mov edx, 0x53bdf8
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
lea edx, [ebp - 0x12bc]
mov eax, dword [0x5d8440]
movzx eax, word [eax + 0x9a]
call fcn.00408cf0
mov ecx, dword [ebp - 0x12bc]
mov edx, 0x53be04
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
mov eax, dword [ebp - 4]
call fcn.005418f0
mov eax, dword [0x5d6d48]
cmp byte [eax + 0x20], 0
jne case.default.0x537952
mov eax, dword [0x5d6d48]
mov byte [eax + 0x20], 1
call fcn.0040adbc
mov eax, dword [0x5d6d48]
fstp qword [eax + 8]
wait
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xa4]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x18], eax
mov eax, dword [0x5d8440]
movzx eax, byte [eax + 0x8c]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x14], eax
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xcc]
mov edx, dword [0x5d6d48]
mov dword [edx + 0x1c], eax
jmp case.default.0x537952
xor eax, eax
mov al, byte [ebp - 0x72]
mov dword [0x5d88f8], eax
mov ax, word [ebp - 0x72]
call fcn.004074ac
and eax, 0xff
mov dword [0x5d88f4], eax
xor eax, eax
mov al, byte [ebp - 0x70]
mov dword [0x5d88fc], eax
mov ax, word [ebp - 0x70]
call fcn.004074ac
and eax, 0xff
mov dword [0x5d8900], eax
xor eax, eax
mov al, byte [ebp - 0x6e]
mov dword [0x5d8904], eax
mov ax, word [ebp - 0x6e]
call fcn.004074ac
and eax, 0xff
mov dword [0x5d8908], eax
xor eax, eax
mov al, byte [ebp - 0x78]
mov dword [0x5d890c], eax
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b54], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b68], eax
mov eax, dword [0x5d8440]
mov ebx, dword [ebp - 0x78]
sub ebx, dword [eax + 0xa4]
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xa4], edx
test ebx, ebx
jge 0x539723
movsx ebx, word [ebp - 0x72]
mov eax, dword [ebp - 4]
mov word [eax + 0x7c8], bx
add dword [0x5d6ba4], ebx
mov eax, dword [ebp - 4]
call fcn.005418f0
mov byte [0x5d6a78], 1
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
push 0x53be10
lea edx, [ebp - 0x12c4]
mov eax, ebx
call fcn.00408cf0
push dword [ebp - 0x12c4]
push 0x53be20
lea eax, [ebp - 0x12c0]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x12c0]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b68], eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0xff
xor edx, edx
xor eax, eax
call fcn.0040751c
mov ecx, eax
mov edx, 0x53be34
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je 0x53983f
mov dx, word [ebp - 0x72]
mov eax, esi
call fcn.005cecd4
mov dx, word [ebp - 0x70]
mov eax, esi
call fcn.005cf244
mov ax, word [ebp - 0x6e]
mov word [esi + 0x9c], ax
cmp esi, dword [0x5d8440]
jne 0x53983f
lea edx, [ebp - 0x12c8]
movzx eax, word [esi + 0x9a]
call fcn.00408cf0
mov ecx, dword [ebp - 0x12c8]
mov edx, 0x53be04
mov eax, dword [0x5d6fc8]
call fcn.005a8b08
cmp esi, dword [0x5d8440]
jne case.default.0x537952
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
lea edx, [ebp - 0x88]
mov ecx, 0x10
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
mov edx, dword [ebp - 0x80]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov ebx, eax
test esi, esi
je 0x5398db
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
push 0
mov eax, dword [ebp - 0x80]
push eax
movsx ecx, word [ebp - 0x72]
mov dx, word [ebp - 0x74]
mov eax, esi
call fcn.005cc4e8
mov dx, word [ebp - 0x72]
mov eax, esi
call fcn.005cecd4
mov ax, word [ebp - 0x70]
mov word [esi + 0x9c], ax
call sub.kernel32.dll_GetTickCount_1
mov dword [esi + 0xf8], eax
lea eax, [ebp - 0x78]
push eax
push 0
mov ecx, ebx
mov edx, esi
mov eax, dword [ebp - 4]
call fcn.0054f2f0
cmp esi, dword [0x5d8440]
jne case.default.0x537952
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
lea edx, [ebp - 0x34]
mov ecx, 8
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov dx, word [ebp - 0x70]
mov ax, word [ebp - 0x72]
call fcn.0040749c
mov dword [esi + 0xe4], eax
mov eax, dword [ebp - 0x34]
mov dword [esi + 0xe8], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xec], eax
mov eax, dword [esi + 0xe4]
call fcn.005c45a0
jmp case.default.0x537952
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov al, 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x6bc]
cmp byte [edx + 0x2e0], 0
je 0x53998e
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00565b10
xor al, 1
test al, al
je case.default.0x537952
push 0
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 0x10ec], 0x20
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 0x20]
call fcn.00492f78
push 0
lea eax, [ebp - 0x12cc]
push eax
mov byte [ebp - 0x10ec], 0x3d
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x28]
call fcn.00492f78
cmp byte [0x5d6b22], 0
je 0x539a31
mov eax, dword [0x5d6b2c]
mov edx, dword [ebp - 0x1c]
call fcn.00404820
jne 0x539a31
push 0xffffff
mov ecx, 0xff
mov edx, 0x53be50
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d6b23], 1
call fcn.0040adbc
fstp qword [0x5d6b24]
wait
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
call fcn.0055752c
lea eax, [ebp - 0x1c]
mov edx, 0x53be70
call fcn.004044ac
cmp byte [0x5d6b34], 0
je 0x539a76
mov eax, dword [0x5d6b38]
mov edx, dword [ebp - 0x1c]
call fcn.00404820
jne 0x539a76
mov eax, dword [0x5d68c8]
mov edx, dword [eax]
call dword [edx + 0x44]
call fcn.005ca3a0
mov byte [0x5d6b3c], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b40], eax
mov eax, 0x5d6b44
mov edx, dword [ebp - 0x24]
call fcn.00404468
jmp 0x58dd20
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
cmp word [ebp - 0x74], 0x64
jne 0x539bdb
cmp byte [0x5d66fa], 0
je 0x539bdb
lea edx, [ebp - 0x12e8]
mov eax, dword [ebp - 0x20]
call fcn.005c2180
mov edx, dword [ebp - 0x12e8]
lea eax, [ebp - 0x20]
call fcn.004044ac
cmp byte [0x5d67c8], 0
je 0x539c84
mov ecx, dword [0x5d67c0]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00556be0
test al, al
je 0x539c10
mov dword [0x5d67bc], 1
xor eax, eax
mov dword [0x5d879c], eax
jmp 0x539c36
mov ecx, dword [0x5d67c4]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00556be0
test al, al
je 0x539c36
mov dword [0x5d67bc], 2
mov byte [0x5d67e0], 0
cmp dword [0x5d67bc], 1
jne 0x539c5d
cmp dword [0x5d67dc], 1
jne 0x539c5d
mov byte [0x5d67e0], 1
mov byte [0x5d67d1], 0
xor eax, eax
mov dword [0x5d67dc], eax
cmp dword [0x5d67bc], 2
jne 0x539c84
cmp dword [0x5d67dc], 2
jne 0x539c84
mov byte [0x5d67e0], 0
mov byte [0x5d67d1], 0
xor eax, eax
mov dword [0x5d67dc], eax
mov al, 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x6bc]
cmp byte [edx + 0x2e0], 0
je 0x539ca5
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00565b10
xor al, 1
test al, al
je case.default.0x537952
call fcn.0040adbc
add esp, 0xfffffff8
fstp qword [esp]
wait
lea ecx, [ebp - 0x3e]
lea edx, [ebp - 0x3c]
lea eax, [ebp - 0x3a]
call fcn.0040ad74
call fcn.0040adbc
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x46]
push eax
lea ecx, [ebp - 0x44]
lea edx, [ebp - 0x42]
lea eax, [ebp - 0x40]
call fcn.0040aa98
push 0x53bd20
lea edx, [ebp - 0x12ec]
movzx eax, word [ebp - 0x40]
call fcn.00408cf0
push dword [ebp - 0x12ec]
push 0x53bea4
lea edx, [ebp - 0x12f0]
movzx eax, word [ebp - 0x42]
call fcn.00408cf0
push dword [ebp - 0x12f0]
push 0x53bea4
lea edx, [ebp - 0x12f4]
movzx eax, word [ebp - 0x44]
call fcn.00408cf0
push dword [ebp - 0x12f4]
push 0x53bd14
lea eax, [ebp - 0x28]
mov edx, 7
call fcn.00404794
cmp word [ebp - 0x74], 0x68
jne 0x539d88
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
movzx eax, word [ebp - 0x74]
push eax
lea eax, [ebp - 0x12f8]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
call fcn.00404720
mov edx, dword [ebp - 0x12f8]
mov ecx, 0x8000
mov eax, dword [0x5d70a4]
call fcn.005b37ac
jmp case.default.0x537952
cmp word [ebp - 0x74], 0x64
jne 0x539ddb
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
mov ecx, eax
mov edx, dword [ebp - 0x20]
mov eax, dword [0x5d70a4]
call fcn.005b2b94
cmp byte [0x5d686c], 0
je case.default.0x537952
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xa04]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00556b08
jmp case.default.0x537952
cmp word [ebp - 0x74], 0x66
jne 0x539e17
push 0xffffff
movzx eax, word [ebp - 0x74]
push eax
lea eax, [ebp - 0x12fc]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x20]
call fcn.00404720
mov edx, dword [ebp - 0x12fc]
mov ecx, 0x8000
mov eax, dword [0x5d70a4]
call fcn.005b3bdc
jmp case.default.0x537952
push 0xffffff
movzx eax, word [ebp - 0x74]
push eax
xor ecx, ecx
mov edx, dword [ebp - 0x20]
mov eax, dword [0x5d70a4]
call fcn.005b364c
jmp case.default.0x537952
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov al, 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x6bc]
cmp byte [edx + 0x2e0], 0
je 0x539e61
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.00565b10
xor al, 1
test al, al
je case.default.0x537952
mov edx, dword [ebp - 0x20]
mov eax, 0x53beb0
call fcn.00404a18
test eax, eax
jle 0x539e9b
push 0xffffff
movzx eax, word [ebp - 0x74]
push eax
mov ecx, 0xff
mov edx, dword [ebp - 0x20]
mov eax, dword [0x5d70a4]
call fcn.005b3bdc
jmp case.default.0x537952
push 0xffffff
movzx eax, word [ebp - 0x74]
push eax
mov ecx, 0xff0000
mov edx, dword [ebp - 0x20]
mov eax, dword [0x5d70a4]
call fcn.005b3bdc
jmp case.default.0x537952
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
push 0
lea eax, [ebp - 0x1300]
push eax
mov byte [ebp - 0x10ec], 0x5c
lea ecx, [ebp - 0x10ec]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x20]
call fcn.00492f78
mov edx, dword [ebp - 0x1300]
lea eax, [esi + 0x7c]
call fcn.00404468
mov edx, dword [ebp - 0x24]
mov eax, esi
call fcn.005cd774
mov dl, byte [ebp - 0x72]
mov eax, esi
call fcn.005cf328
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
je case.default.0x537952
mov dl, byte [ebp - 0x72]
mov eax, esi
call fcn.005cf328
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
je case.default.0x537952
movsx eax, word [ebp - 0x72]
push eax
movsx eax, word [ebp - 0x70]
push eax
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x78]
mov edx, 0x4c8
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
lea edx, [ebp - 0x88]
mov ecx, 0x10
mov eax, dword [ebp - 0x10]
call fcn.00499604
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b4cf0
mov esi, eax
test esi, esi
jne 0x539fdf
mov ax, word [ebp - 0x70]
push eax
mov ax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
mov cx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b5070
mov esi, eax
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
push 0
push 0
movsx ecx, word [ebp - 0x72]
mov dx, 0x14
mov eax, esi
call fcn.005cc4e8
mov byte [esi + 0x188], 1
jmp case.default.0x537952
lea edx, [ebp - 0x2c]
mov ecx, 4
mov eax, dword [ebp - 0x10]
call fcn.00499604
cmp word [ebp - 0x72], 5
jne case.default.0x537952
movzx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
movsx eax, word [ebp - 0x72]
push eax
mov ecx, dword [ebp - 0x78]
mov dl, 1
mov eax, dword [0x5b4238]
call fcn.005b42f4
xor edx, edx
mov dword [eax + 0xc], edx
movzx edx, word [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov edx, eax
mov eax, dword [0x5d70b0]
call fcn.005b4428
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [0x5d70b0]
call fcn.005b4634
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053e038
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053eba0
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053e8ac
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053e968
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053ea60
jmp case.default.0x537952
lea edx, [ebp - 0x1304]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [ebp - 0x1304]
mov edx, dword [ebp - 0x78]
call fcn.005c3ebc
jmp case.default.0x537952
push 0xffffff
mov ecx, 0xff
mov edx, 0x53bebc
mov eax, dword [0x5d70a4]
call fcn.005b2b94
lea edx, [ebp - 0x1308]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x1308]
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053f3e8
jmp case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
movsx eax, word [ebp - 0x6e]
push eax
lea edx, [ebp - 0x130c]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [ebp - 0x130c]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053f454
jmp case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053f894
jmp case.default.0x537952
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov ecx, 0xff
mov edx, 0x53bed4
mov eax, dword [0x5d70a4]
call fcn.005b2b94
movsx ecx, word [ebp - 0x70]
movsx edx, word [ebp - 0x72]
mov eax, dword [0x5d70ac]
call fcn.005b8770
mov byte [0x5d6f72], 0
jmp case.default.0x537952
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0x64
mov dl, 0x64
mov al, 0x64
call fcn.0040751c
mov ecx, eax
mov edx, 0x53bee8
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d6f72], 0
jmp case.default.0x537952
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov ecx, 0xff
mov edx, 0x53bf00
mov eax, dword [0x5d70a4]
call fcn.005b2b94
movsx ecx, word [ebp - 0x70]
movsx edx, word [ebp - 0x72]
mov eax, dword [0x5d70ac]
call fcn.005b8808
cmp byte [0x5d6f72], 0
je case.default.0x537952
mov ebx, 8
mov eax, dword [0x5d3974]
mov dword [ebp - 0x68], eax
mov eax, dword [0x5d3858]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x5d8440]
movzx esi, word [eax + 0x120]
mov eax, dword [ebp - 0x68]
add esi, dword [eax]
mov eax, dword [0x5d8440]
movzx edi, word [eax + 0x122]
mov eax, dword [ebp - 0x6c]
add edi, dword [eax]
mov ecx, edi
mov edx, esi
mov eax, dword [ebp - 4]
call fcn.00544cd0
test al, al
jne case.default.0x537952
add dword [ebp - 0x6c], 4
add dword [ebp - 0x68], 4
dec ebx
jne 0x53a23e
jmp case.default.0x537952
mov byte [0x5d69bc], 0
mov eax, 0x5d69b8
call fcn.00404414
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0x70], edx
mov eax, dword [0x5d8440]
mov si, 0xfffd
call fcn.004037e0
mov eax, dword [0x5d8708]
sub eax, 0xd
jae 0x53a2d2
imul eax, dword [0x5d8708], 0x35
lea edi, [eax + 0x5d8444]
mov esi, 0x5d870c
mov ecx, 0xd
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x79c], edx
mov byte [0x5d870c], 0
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bf14
call fcn.00404820
jne 0x53a307
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x888]
mov edx, 0x53bf14
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x895], 1
jmp case.default.0x537952
mov byte [0x5d69bc], 0
mov eax, 0x5d69b8
call fcn.00404414
mov eax, 0x5d870c
call fcn.005c3a80
mov byte [0x5d870c], 0
mov eax, dword [ebp - 4]
call fcn.0053ec88
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x79c], edx
push 0
mov ecx, 0xff
mov edx, 0x53bf24
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bf14
call fcn.00404820
jne 0x53a3a1
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x888]
mov edx, 0x53bf14
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x895], 1
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0x70], edx
mov eax, dword [0x5d8440]
mov si, 0xfffd
call fcn.004037e0
mov byte [0x5d870c], 0
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bf38
call fcn.00404820
jne 0x53a410
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x888]
mov edx, 0x53bf38
call fcn.00404820
jne 0x53a433
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x895], 1
mov eax, dword [ebp - 4]
call fcn.00545a6c
mov byte [0x5d69b4], 0
mov eax, 0x5d69b8
call fcn.00404414
jmp case.default.0x537952
mov byte [0x5d69b4], 0
mov eax, 0x5d69b8
call fcn.00404414
cmp dword [0x5d8708], 0
jge 0x53a489
mov eax, dword [0x5d8708]
inc eax
neg eax
imul eax, eax, 0x35
lea edi, [eax + 0x5d8444]
mov esi, 0x5d870c
mov ecx, 0xd
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov byte [0x5d870c], 0
mov eax, dword [ebp - 4]
call fcn.00545a6c
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bf38
call fcn.00404820
jne 0x53a4bb
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x888]
mov edx, 0x53bf38
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x895], 1
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053f950
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov dx, word [ebp - 0x78]
mov word [eax + 0xac], dx
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x72]
mov byte [eax + 0xb0], dl
mov eax, dword [0x5d8440]
mov dl, byte [ebp - 0x70]
mov byte [eax + 0xb2], dl
mov eax, dword [ebp - 4]
call fcn.005418f0
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xcc]
cmp eax, dword [ebp - 0x78]
jge 0x53a5a5
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov cl, 0x64
mov dl, 0xc8
mov al, 0xa
call fcn.0040751c
push eax
push 0x53bf48
mov eax, dword [0x5d8440]
push dword [eax + 0xcc]
mov eax, dword [ebp - 0x78]
pop edx
sub eax, edx
lea edx, [ebp - 0x1314]
call fcn.00408cf0
push dword [ebp - 0x1314]
push 0x53bf58
lea eax, [ebp - 0x1310]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x1310]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
jmp case.default.0x537952
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0x60]
cmp eax, dword [ebp - 0x78]
jne case.default.0x537952
push 0
push 0
push 0
mov dx, word [ebp - 0x70]
mov ax, word [ebp - 0x72]
call fcn.0040749c
push eax
push 0
push 0
movzx edx, word [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
push 0
push 0
push 0
mov dx, word [ebp - 0x70]
mov ax, word [ebp - 0x72]
call fcn.0040749c
push eax
movsx eax, word [ebp - 0x6e]
push eax
push 0
movzx edx, word [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
mov eax, dword [0x5d70f0]
call fcn.005b54e0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d884c], eax
mov byte [0x5d8849], 1
jmp case.default.0x537952
mov eax, 0x5d8744
call fcn.005c6c28
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x784], edx
mov eax, dword [0x5d8770]
call fcn.00536434
lea eax, [ebp - 0x1318]
mov edx, 0x5d8744
call fcn.00404678
mov edx, dword [ebp - 0x1318]
mov eax, dword [0x5d6d48]
call fcn.005cb7c8
mov byte [0x5d8744], 0
xor eax, eax
mov dword [0x5d8844], eax
mov eax, dword [ebp - 4]
call fcn.0053ec88
jmp case.default.0x537952
mov eax, dword [ebp - 4]
mov byte [eax + 0x72c], 0
mov eax, dword [ebp - 4]
inc dword [eax + 0x784]
mov eax, 0x5d8744
call fcn.005c6aec
mov eax, 0x5d8744
call fcn.005c6c90
test al, al
je 0x53a6cc
call fcn.005c1398
mov ebx, eax
jmp 0x53a6d3
call fcn.005c1368
mov ebx, eax
cmp ebx, 6
jge 0x53a6e4
mov eax, dword [ebp - 4]
cmp dword [eax + 0x784], 1
jle 0x53a71d
cmp byte [0x5d6b91], 0
jne 0x53a71d
mov byte [0x5d6b91], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b94], eax
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x51
mov eax, dword [ebp - 4]
call fcn.00533510
mov eax, dword [ebp - 4]
mov byte [eax + 0x7a8], 1
mov eax, dword [0x5d8770]
call fcn.00536434
mov eax, 0x5d8744
call fcn.005c3a80
push 0xffffff
mov edx, 0x53bf60
lea eax, [ebp - 0x1334]
call fcn.00402cf4
mov edx, 0x5d8744
lea eax, [ebp - 0x1334]
mov cl, 0x17
call fcn.00402cc4
lea edx, [ebp - 0x1334]
lea eax, [ebp - 0x1354]
call fcn.00402cf4
mov edx, 0x53bf6c
lea eax, [ebp - 0x1354]
mov cl, 0x1c
call fcn.00402cc4
lea edx, [ebp - 0x1354]
lea eax, [ebp - 0x131c]
call fcn.00404678
mov edx, dword [ebp - 0x131c]
mov ecx, 0xff
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d8744], 0
mov eax, dword [ebp - 4]
call fcn.0053ec88
jmp case.default.0x537952
cmp dword [ebp - 0x10], 0
je case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053fa90
jmp case.default.0x537952
cmp dword [ebp - 0x10], 0
je case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0053fbc0
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053fb60
jmp case.default.0x537952
mov dx, word [ebp - 0x6e]
mov ax, word [ebp - 0x70]
call fcn.0040749c
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053fd90
jmp case.default.0x537952
mov dx, word [ebp - 0x6e]
mov ax, word [ebp - 0x70]
call fcn.0040749c
push eax
movsx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053fdfc
jmp case.default.0x537952
lea edx, [ebp - 0x1358]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [ebp - 0x1358]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0053fe2c
jmp case.default.0x537952
lea edx, [ebp - 0x135c]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [ebp - 0x135c]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540240
jmp case.default.0x537952
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.00481d60
jmp case.default.0x537952
mov eax, dword [ebp - 0x10]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0054044c
jmp case.default.0x537952
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540724
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540900
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540990
jmp case.default.0x537952
cmp byte [0x5d8914], 0
je case.default.0x537952
cmp dword [ebp - 0x78], 0
jle 0x53a926
lea edx, [ebp - 0x1360]
mov eax, dword [ebp - 0x78]
call fcn.00408cf0
mov edx, dword [ebp - 0x1360]
mov eax, 0x5d88b0
mov ecx, 0x53bf7c
call fcn.00404720
jmp case.default.0x537952
mov eax, 0x5d88b0
mov edx, 0x53bf88
call fcn.00404468
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
push 0xffffff
mov edx, 0x53bf90
lea eax, [ebp - 0x1378]
call fcn.00402cf4
mov edx, 0x5d894c
lea eax, [ebp - 0x1378]
mov cl, 0x12
call fcn.00402cc4
lea edx, [ebp - 0x1378]
lea eax, [ebp - 0x1364]
call fcn.00404678
mov edx, dword [ebp - 0x1364]
mov ecx, 0x8000
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d894c], 0
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bfa0
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bfa0
call fcn.00404820
jne 0x53aa11
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
mov eax, 0x5d894c
call fcn.005c3a80
mov byte [0x5d894c], 0
mov eax, dword [ebp - 4]
call fcn.0053ec88
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b1500
push 0xffffff
mov ecx, 0x8000
mov edx, 0x53bfb0
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
cmp byte [0x5d8914], 0
je case.default.0x537952
cmp dword [ebp - 0x78], 0
jl 0x53aa8f
lea edx, [ebp - 0x137c]
mov eax, dword [ebp - 0x78]
call fcn.00408cf0
mov edx, dword [ebp - 0x137c]
mov eax, 0x5d88b0
mov ecx, 0x53bfc8
call fcn.00404720
jmp case.default.0x537952
mov eax, 0x5d88b0
mov edx, 0x53bf88
call fcn.00404468
jmp case.default.0x537952
cmp byte [0x5d894c], 0
je 0x53abb8
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
mov edx, 0x53bfcc
lea eax, [ebp - 0x139c]
call fcn.00402cf4
mov edx, 0x5d894c
lea eax, [ebp - 0x139c]
mov cl, 0x16
call fcn.00402cc4
lea edx, [ebp - 0x139c]
lea eax, [ebp - 0x13b8]
call fcn.00402cf4
mov edx, 0x53bfd8
lea eax, [ebp - 0x13b8]
mov cl, 0x1a
call fcn.00402cc4
lea edx, [ebp - 0x13b8]
lea eax, [ebp - 0x1384]
call fcn.00404678
push dword [ebp - 0x1384]
lea edx, [ebp - 0x13bc]
mov eax, dword [0x5d8440]
mov eax, dword [eax + 0xcc]
sub eax, dword [ebp - 0x78]
call fcn.00408cf0
push dword [ebp - 0x13bc]
push 0x53bfe8
lea eax, [ebp - 0x1380]
mov edx, 3
call fcn.00404794
mov edx, dword [ebp - 0x1380]
xor ecx, ecx
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
mov ax, word [ebp - 0x72]
mov word [0x5d897c], ax
mov ax, word [ebp - 0x70]
mov word [0x5d897e], ax
mov eax, 0x5d894c
call fcn.005c3a80
mov eax, dword [ebp - 4]
call fcn.0053ec88
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b17d4
mov byte [0x5d894c], 0
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bff4
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, 0x5d894c
call fcn.005c3a80
mov eax, dword [ebp - 4]
call fcn.0053ec88
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b17d4
mov byte [0x5d894c], 0
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53c000
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53bff4
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53c018
call fcn.00404820
jne 0x53aca6
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
cmp word [ebp - 0x74], 0x2bd
je 0x53ad1c
cmp word [ebp - 0x74], 0x2be
jne 0x53ace0
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53c028
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp 0x53ad08
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53c048
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, 0x5d894c
call fcn.005c3a80
mov eax, dword [ebp - 4]
call fcn.0053ec88
jmp 0x53ad9a
push 0xffffff
mov edx, 0x53c058
lea eax, [ebp - 0x1378]
call fcn.00402cf4
mov edx, 0x5d894c
lea eax, [ebp - 0x1378]
mov cl, 0x12
call fcn.00402cc4
lea edx, [ebp - 0x1378]
lea eax, [ebp - 0x13c0]
call fcn.00404678
mov edx, dword [ebp - 0x13c0]
mov ecx, 0x8000
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, 0x35
call fcn.00402714
mov ebx, eax
mov edx, 0x5d894c
mov ecx, 0x35
mov eax, ebx
call fcn.004074bc
mov edx, ebx
mov eax, dword [0x5d86f8]
call fcn.004199a0
mov eax, dword [ebp - 4]
call fcn.0053f0a0
mov byte [0x5d894c], 0
jmp case.default.0x537952
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540b1c
jmp case.default.0x537952
mov byte [0x5d69ac], 0
mov eax, 0x5d69b0
call fcn.00404414
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53c068
call fcn.00404820
jne 0x53ae00
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
cmp word [ebp - 0x74], 0x2c1
je 0x53ae46
cmp word [ebp - 0x74], 0x2c3
jne 0x53ae2b
push 0xffffff
xor ecx, ecx
mov edx, 0x53c074
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
push 0xffffff
xor ecx, ecx
mov edx, 0x53c08c
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
mov eax, dword [0x5d3738]
mov eax, dword [eax]
mov eax, dword [eax + 0x3f0]
mov edx, dword [eax + 0x15]
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b2468
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b11cc
mov eax, dword [ebp - 4]
call fcn.0053f0a0
jmp case.default.0x537952
mov byte [0x5d69a5], 0
mov eax, 0x5d69a8
call fcn.00404414
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
mov eax, dword [0x5d8440]
mov edx, dword [ebp - 0x78]
mov dword [eax + 0xcc], edx
mov eax, dword [0x5d3738]
mov eax, dword [eax]
cmp dword [eax + 0x3f8], 0
je 0x53aed9
mov eax, dword [0x5d3738]
mov eax, dword [eax]
mov eax, dword [eax + 0x3f0]
mov edx, dword [eax + 0x19]
mov eax, dword [0x5d3738]
mov eax, dword [eax]
call fcn.005b24f0
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53c0a0
call fcn.00404820
jne case.default.0x537952
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
jmp case.default.0x537952
mov byte [0x5d69a5], 0
mov eax, 0x5d69a8
call fcn.00404414
mov eax, dword [0x5d6fc8]
mov eax, dword [eax + 0x87c]
mov edx, 0x53c0a0
call fcn.00404820
jne 0x53af39
mov eax, dword [0x5d6fc8]
mov byte [eax + 0x894], 1
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
push 0xffffff
mov ecx, 0xff
mov edx, 0x53c0ac
mov eax, dword [0x5d70a4]
call fcn.005b2b94
cmp byte [0x5d6b91], 0
jne case.default.0x537952
mov byte [0x5d6b91], 1
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d6b94], eax
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x51
mov eax, dword [ebp - 4]
call fcn.00533510
jmp case.default.0x537952
movsx eax, word [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x10]
push eax
movsx ecx, word [ebp - 0x72]
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540dbc
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00540fdc
jmp case.default.0x537952
cmp word [ebp - 0x72], 0
jle 0x53afda
mov byte [0x5d88b4], 1
jmp 0x53afe1
mov byte [0x5d88b4], 0
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
mov byte [0x5d88b4], 1
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
push 0xffffff
mov ecx, 0xff
mov edx, 0x53c0c0
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov byte [0x5d68d4], 0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov eax, dword [0x5d88b8]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x53b08b
inc eax
mov dword [ebp - 0x64], eax
xor ebx, ebx
lea ecx, [ebp - 0x13c4]
mov edx, ebx
mov eax, dword [0x5d88b8]
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x13c4]
mov edx, dword [ebp - 0x1c]
call fcn.00404820
je case.default.0x537952
inc ebx
dec dword [ebp - 0x64]
jne 0x53b05f
mov edx, dword [ebp - 0x1c]
mov eax, dword [0x5d88b8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0xffffff
lea eax, [ebp - 0x13c8]
mov ecx, 0x53c0d8
mov edx, dword [ebp - 0x1c]
call fcn.00404720
mov edx, dword [ebp - 0x13c8]
mov ecx, 0x8000
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp 0x58db30
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
push 0xffffff
mov ecx, 0x8000
mov edx, 0x53c0ec
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
xor ebx, ebx
mov eax, dword [0x5d88b8]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp ebx, eax
jge case.default.0x537952
lea ecx, [ebp - 0x13cc]
mov edx, ebx
mov eax, dword [0x5d88b8]
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x13cc]
mov edx, dword [ebp - 0x1c]
call fcn.00404820
jne 0x53b14e
mov edx, ebx
mov eax, dword [0x5d88b8]
mov ecx, dword [eax]
call dword [ecx + 0x48]
jmp case.default.0x537952
inc ebx
jmp 0x53b109
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70cc], eax
push 0xffffff
mov ecx, 0xff
mov edx, 0x53c108
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
mov eax, dword [0x5d88b8]
mov edx, dword [eax]
call dword [edx + 0x44]
jmp case.default.0x537952
lea edx, [ebp - 0x13d0]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x13d0]
mov eax, dword [ebp - 4]
call fcn.00541100
mov byte [0x5d68d4], 0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70d0], eax
xor eax, eax
mov dword [0x5d709c], eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
mov ecx, eax
mov edx, 0x53c120
mov eax, dword [0x5d70a4]
call fcn.005b2b94
jmp case.default.0x537952
cmp byte [0x5d6980], 0
je 0x53b21a
mov eax, dword [0x5d3de4]
xor edx, edx
mov dword [eax], edx
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x404
mov eax, dword [ebp - 4]
call fcn.00533510
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70d0], eax
lea edx, [ebp - 0x13d4]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x13d4]
mov eax, 0x5d70f8
call fcn.00404468
mov ecx, dword [ebp - 4]
mov dl, 1
mov eax, dword [0x58a838]
call fcn.0047dbb0
mov edx, dword [0x5d3de4]
mov dword [edx], eax
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
mov eax, dword [eax + 0x30c]
mov edx, dword [0x5d70f8]
call fcn.00465540
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
mov eax, dword [ebp - 4]
call fcn.0046be24
push eax
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0046be24
push eax
call sub.user32.dll_SetParent
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.00481f08
mov byte [0x5d69f8], 1
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.00465770
jmp case.default.0x537952
push 0xffffff
mov ecx, 0x8000
mov edx, 0x53c134
mov eax, dword [0x5d70a4]
call fcn.005b2b94
mov eax, dword [0x5d3de4]
cmp dword [eax], 0
je 0x53b2eb
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.00481d60
call fcn.005c3fd4
cmp byte [0x5d7060], 0
je 0x53b30a
mov eax, 0x5d7060
call fcn.005c3a80
mov byte [0x5d7060], 0
cmp dword [0x5d7098], 0
jle 0x53b32b
mov eax, dword [0x5d8440]
mov edx, dword [0x5d7098]
add dword [eax + 0xcc], edx
xor eax, eax
mov dword [0x5d7098], eax
mov ebx, 0x14
mov dword [ebp - 0x6c], 0x5d7f64
mov dword [ebp - 0x68], 0x5d7b40
mov eax, dword [ebp - 0x6c]
mov byte [eax], 0
mov eax, dword [ebp - 0x68]
mov byte [eax], 0
add dword [ebp - 0x68], 0x35
add dword [ebp - 0x6c], 0x35
dec ebx
jne 0x53b33e
xor eax, eax
mov dword [0x5d709c], eax
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d7060], 0
je 0x53b37b
mov byte [0x5d7060], 0
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d7060], 0
je 0x53b3c9
mov eax, 0x5d7060
call fcn.005c3a80
mov byte [0x5d7060], 0
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d7060], 0
je 0x53b40d
mov byte [0x5d7060], 0
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d7060], 0
je 0x53b47c
lea eax, [ebp - 0x13d8]
mov edx, 0x5d7060
call fcn.00404678
mov eax, dword [ebp - 0x13d8]
mov edx, dword [0x5d708c]
call fcn.005c3c2c
mov eax, 0x5d7060
call fcn.005c3f90
mov byte [0x5d7060], 0
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00541258
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.005412c4
jmp case.default.0x537952
mov eax, dword [ebp - 0x78]
mov dword [0x5d7098], eax
mov dx, word [ebp - 0x70]
mov ax, word [ebp - 0x72]
call fcn.0040749c
mov edx, dword [0x5d8440]
mov dword [edx + 0xcc], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
mov eax, dword [ebp - 0x78]
mov dword [0x5d7098], eax
mov dx, word [ebp - 0x70]
mov ax, word [ebp - 0x72]
call fcn.0040749c
mov edx, dword [0x5d8440]
mov dword [edx + 0xcc], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [0x5d70a0], eax
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ade0
jmp case.default.0x537952
cmp byte [0x5d69f8], 0
je case.default.0x537952
mov eax, dword [ebp - 0x78]
mov dword [0x5d709c], eax
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.0058ac10
jmp case.default.0x537952
mov ebx, 0x14
mov dword [ebp - 0x68], 0x5d7f64
mov dword [ebp - 0x6c], 0x5d7b40
mov eax, dword [ebp - 0x68]
mov byte [eax], 0
mov eax, dword [ebp - 0x6c]
mov byte [eax], 0
add dword [ebp - 0x6c], 0x35
add dword [ebp - 0x68], 0x35
dec ebx
jne 0x53b5a9
xor eax, eax
mov dword [0x5d709c], eax
xor eax, eax
mov dword [0x5d7098], eax
mov byte [0x5d7060], 0
mov eax, dword [0x5d3de4]
mov eax, dword [eax]
call fcn.00481d60
jmp case.default.0x537952
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.00540a8c
jmp case.default.0x537952
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00541408
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
cmp dword [ebp - 0x10], 0
je case.default.0x537952
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xff
call fcn.0040751c
push eax
lea edx, [ebp - 0x13dc]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x13dc]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp case.default.0x537952
cmp dword [ebp - 0x10], 0
je case.default.0x537952
mov cl, 0xff
xor edx, edx
xor eax, eax
call fcn.0040751c
push eax
mov cl, 0xff
mov dl, 0xff
mov al, 0xfa
call fcn.0040751c
push eax
lea edx, [ebp - 0x13e0]
mov eax, dword [ebp - 0x10]
call fcn.0049956c
mov edx, dword [ebp - 0x13e0]
mov eax, dword [0x5d70a4]
pop ecx
call fcn.005b2b94
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
jmp case.default.0x537952
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [0x5d3738]
mov edx, dword [edx]
mov dword [edx + 0x420], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53b776
lea eax, [ebp - 0x13e0]
mov edx, 0xa
call fcn.00404438
lea eax, [ebp - 0x1384]
mov edx, 3
call fcn.00404438
lea eax, [ebp - 0x1364]
mov edx, 4
call fcn.00404438
lea eax, [ebp - 0x131c]
mov edx, 0x12
call fcn.00404438
lea eax, [ebp - 0x12d4]
call fcn.00404414
lea eax, [ebp - 0x12d0]
mov edx, 0xe
call fcn.00404438
lea eax, [ebp - 0x1264]
mov edx, 0x12
call fcn.00404438
lea eax, [ebp - 0x111c]
mov edx, 0xc
call fcn.00404438
lea eax, [ebp - 0x10e8]
call fcn.00404414
lea eax, [ebp - 0x60]
call fcn.00404414
lea eax, [ebp - 0x28]
mov edx, 9
call fcn.00404438
ret
test eax, eax
je 0x58d98f
mov dword [eax + 0xf4], edx
jmp 0x536bc9
jmp case.default.0x537952
mov eax, 0x5d8c50
call fcn.00404414
mov eax, dword [0x5d70a8]
mov edx, dword [0x5d70a8]
call fcn.00557694
jmp case.default.0x537952
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
call dword [0x5d8c74]
jmp 0x539c84
mov ecx, 0x5d8d00
mov ecx, dword [ecx]
call ecx
cmp eax, 0x288
jmp 0x5375e1