Function at 0x545d5c
Capabilities:
Check for time delay via gettickcount
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa39
push 0
push 0
dec ecx
jne 0x545d64
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x548ca5
push dword fs:[eax]
mov dword fs:[eax], esp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0xc]
call fcn.004055e4
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x548c7a
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x548c7a
mov eax, dword [ebp - 0x28]
push eax
push 0x54bc60
mov eax, dword [ebp - 0x28]
call fcn.004257cc
mov edx, dword [0x582d10]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x548cbc
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d554
test al, al
je 0x545e6f
mov dl, 1
mov eax, dword [0x41c3a4]
call fcn.00404674
mov dword [ebp - 0xc8], eax
xor eax, eax
push ebp
push 0x545e40
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
call fcn.00421900
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x545e4a
mov eax, dword [ebp - 0xc8]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x545e60
cmp eax, 0
ja 0x545e77
jmp 0x545e62
jg 0x545e77
lea eax, [ebp - 0xc8]
call fcn.00413818
jmp 0x545e77
xor eax, eax
mov dword [ebp - 0xc8], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [0x582d10]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x548cd4
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d554
test al, al
je 0x545f1d
mov dl, 1
mov eax, dword [0x41c3a4]
call fcn.00404674
mov dword [ebp - 0xcc], eax
xor eax, eax
push ebp
push 0x545eee
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xcc]
call fcn.00421900
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x545ef8
mov eax, dword [ebp - 0xcc]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x545f0e
cmp eax, 0
ja 0x545f25
jmp 0x545f10
jg 0x545f25
lea eax, [ebp - 0xcc]
call fcn.00413818
jmp 0x545f25
xor eax, eax
mov dword [ebp - 0xcc], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [0x582d10]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x548cf0
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d554
test al, al
je 0x545fcb
mov dl, 1
mov eax, dword [0x41c3a4]
call fcn.00404674
mov dword [ebp - 0xd0], eax
xor eax, eax
push ebp
push 0x545f9c
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xd0]
call fcn.00421900
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x545fa6
mov eax, dword [ebp - 0xd0]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x545fbc
cmp eax, 0
ja 0x545fd3
jmp 0x545fbe
jg 0x545fd3
lea eax, [ebp - 0xd0]
call fcn.00413818
jmp 0x545fd3
xor eax, eax
mov dword [ebp - 0xd0], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp byte [ebp - 0x35], 0
jne 0x548c2a
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x548c2a
mov eax, dword [0x582ca0]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x548c2a
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x548c2a
mov eax, dword [0x582438]
cmp byte [eax], 0
jne 0x548c2a
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x28]
mov byte [eax + 0x57], 0
mov byte [ebp - 0x49], 0
mov eax, dword [ebp - 0x28]
mov byte [eax + 0x56], 0
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x58], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0xc]
call fcn.004055e4
lea eax, [ebp - 0x14]
call fcn.004055e4
mov byte [ebp - 0x35], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor ecx, ecx
mov dl, 1
mov eax, dword [0x489e74]
call fcn.0048bca0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x54], edx
mov dword [eax + 0x50], 0x545764
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x64], edx
mov dword [eax + 0x60], 0x545780
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x8c], edx
mov dword [eax + 0x88], 0x54578c
mov dl, 1
mov eax, dword [ebp - 0x30]
call fcn.0048bd90
cmp dword [ebp - 0x2c], 0
jne 0x54617b
lea eax, [ebp - 0x20]
mov edx, dword [0x5826f8]
add edx, 0x1de
call fcn.00405848
lea eax, [ebp - 0x5198]
mov edx, dword [0x5826f8]
add edx, 0x19c
call fcn.00405848
mov edx, dword [ebp - 0x5198]
mov eax, dword [ebp - 0x30]
call fcn.0048b66c
mov edx, dword [0x5826f8]
movzx edx, word [edx + 0x1da]
mov eax, dword [ebp - 0x30]
call fcn.0048b6ec
jmp 0x5461c9
lea eax, [ebp - 0x519c]
mov edx, dword [0x5826f8]
add edx, 0x1bb
call fcn.00405848
mov edx, dword [ebp - 0x519c]
mov eax, dword [ebp - 0x30]
call fcn.0048b66c
mov edx, dword [0x5826f8]
movzx edx, word [edx + 0x1dc]
mov eax, dword [ebp - 0x30]
call fcn.0048b6ec
lea eax, [ebp - 0x20]
mov edx, dword [0x5826f8]
add edx, 0x1fd
call fcn.00405848
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dl, 1
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x56], 0
jne 0x548c0d
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x548c0d
cmp byte [ebp - 0x35], 0
jne 0x548c0d
mov eax, dword [0x582ca0]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x548c0d
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x548c0d
mov eax, dword [0x582438]
cmp byte [eax], 0
jne 0x548c0d
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x28]
sub eax, dword [edx + 0x58]
cmp eax, 0x2710
jbe 0x546269
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x548c0d
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x548c01
cmp byte [ebp - 0x49], 0
jne 0x5485bf
mov byte [ebp - 0x49], 1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x4128]
xor ecx, ecx
mov edx, 0x30
call fcn.00403e38
mov word [ebp - 0x4128], 0x3e9
lea eax, [ebp - 0x5194]
push eax
call sub.kernel32.dll_GetLocalTime
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x20]
call fcn.0040567c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0
je 0x546313
mov eax, dword [ebp - 0xd8]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x411c], eax
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 0x9c]
call fcn.00405d04
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x513c]
mov ecx, 0xff
mov edx, 0x1000
call fcn.00403e38
lea eax, [ebp - 0x5184]
mov ecx, 0xff
mov edx, 0x48
call fcn.00403e38
movzx eax, word [ebp - 0x5194]
movzx edx, word [ebp - 0x5192]
add eax, edx
movzx edx, word [ebp - 0x518e]
add eax, edx
movzx edx, word [ebp - 0x518c]
add eax, edx
movzx edx, word [ebp - 0x518a]
add eax, edx
movzx edx, word [ebp - 0x5188]
add eax, edx
mov dword [ebp - 0x6c], eax
lea edx, [ebp - 0x51a0]
mov eax, dword [ebp - 0x6c]
call fcn.0040cdac
mov eax, dword [ebp - 0x51a0]
lea edx, [ebp - 0x413c]
call fcn.0047ee5c
lea eax, [ebp - 0x82]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
lea edx, [ebp - 0x82]
lea eax, [ebp - 0x413c]
mov ecx, 8
call fcn.004035b8
mov dword [ebp - 0x8c], 0x40
mov ecx, 8
mov eax, dword [ebp - 0x8c]
xor edx, edx
div ecx
mov dword [ebp - 0x8c], eax
lea edx, [ebp - 0x513c]
mov eax, dword [0x582f7c]
mov ecx, 0x1000
call fcn.004035b8
lea edx, [ebp - 0x5184]
mov eax, dword [0x582cd4]
mov ecx, 0x48
call fcn.004035b8
xor eax, eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0xa4], 0x12
lea eax, [ebp - 0x5184]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x88]
add eax, 3
xor edx, edx
div dword [ebp - 0x8c]
movzx eax, byte [ebp + edx - 0x82]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x88]
add eax, 2
xor edx, edx
div dword [ebp - 0x8c]
movzx eax, byte [ebp + edx - 0x82]
shl eax, 8
add dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x88]
inc eax
xor edx, edx
div dword [ebp - 0x8c]
movzx eax, byte [ebp + edx - 0x82]
shl eax, 0x10
add dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x88]
movzx eax, byte [ebp + eax - 0x82]
shl eax, 0x18
add dword [ebp - 0x90], eax
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0x90]
xor dword [eax], edx
mov eax, dword [ebp - 0x88]
add eax, 4
xor edx, edx
div dword [ebp - 0x8c]
mov dword [ebp - 0x88], edx
add dword [ebp - 0xe4], 4
dec dword [ebp - 0xa4]
jne 0x546466
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
mov dword [ebp - 0xa4], 9
lea eax, [ebp - 0x5184]
mov dword [ebp - 0xe4], eax
lea eax, [ebp - 0x98]
mov ebx, dword [eax]
lea eax, [ebp - 0x98]
add eax, 4
mov esi, dword [eax]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5158]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5154]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5150]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x514c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5148]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5144]
xor esi, dword [ebp - 0x5140]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
lea eax, [ebp - 0x98]
mov dword [eax], esi
lea eax, [ebp - 0x98]
add eax, 4
mov dword [eax], ebx
movzx eax, byte [ebp - 0x95]
movzx edx, byte [ebp - 0x96]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x97]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x98]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xe4]
mov dword [edx], eax
movzx eax, byte [ebp - 0x91]
movzx edx, byte [ebp - 0x92]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x93]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x94]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xe4]
mov dword [edx + 4], eax
add dword [ebp - 0xe4], 8
dec dword [ebp - 0xa4]
jne 0x54653e
mov dword [ebp - 0x88], 4
lea eax, [ebp - 0x513c]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xa4], 0x80
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0x98]
mov ebx, dword [eax]
lea eax, [ebp - 0x98]
add eax, 4
mov esi, dword [eax]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5158]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5154]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5150]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x514c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5148]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5144]
xor esi, dword [ebp - 0x5140]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
lea eax, [ebp - 0x98]
mov dword [eax], esi
lea eax, [ebp - 0x98]
add eax, 4
mov dword [eax], ebx
movzx eax, byte [ebp - 0x95]
movzx edx, byte [ebp - 0x96]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x97]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x98]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xe8]
mov dword [edx], eax
movzx eax, byte [ebp - 0x91]
movzx edx, byte [ebp - 0x92]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x93]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x94]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xe8]
mov dword [edx + 4], eax
add dword [ebp - 0xe8], 8
dec dword [ebp - 0xa4]
jne 0x546b9a
add dword [ebp - 0xe4], 0x400
dec dword [ebp - 0x88]
jne 0x546b84
lea eax, [ebp - 0x1c]
call fcn.00405ad4
mov dword [ebp - 0xc0], eax
lea eax, [ebp - 0x18]
call fcn.00405ad4
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0xb8]
mov ecx, 0xff
mov edx, 8
call fcn.00403e38
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x9c]
test eax, eax
jns 0x547236
add eax, 7
sar eax, 3
test eax, eax
jbe 0x5478d6
mov dword [ebp - 0xd4], eax
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xac]
mov ecx, 8
call fcn.004035b8
mov dword [ebp - 0xa8], 1
mov eax, dword [ebp - 0xb0]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
movzx ecx, byte [eax]
lea eax, [ebp - 0xb8]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
xor cl, byte [eax]
mov eax, dword [ebp - 0xb0]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
mov byte [eax], cl
inc dword [ebp - 0xa8]
cmp dword [ebp - 0xa8], 9
jne 0x547267
mov eax, dword [ebp - 0xb0]
mov ebx, dword [eax]
mov eax, dword [ebp - 0xb0]
add eax, 4
mov esi, dword [eax]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5158]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5154]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5150]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x514c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5148]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5144]
xor esi, dword [ebp - 0x5140]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
mov eax, dword [ebp - 0xb0]
mov dword [eax], esi
mov eax, dword [ebp - 0xb0]
add eax, 4
mov dword [eax], ebx
lea edx, [ebp - 0xb8]
mov eax, dword [ebp - 0xb0]
mov ecx, 8
call fcn.004035b8
mov eax, dword [ebp - 0xac]
add eax, 8
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xb0]
add eax, 8
mov dword [ebp - 0xb0], eax
dec dword [ebp - 0xd4]
jne 0x547247
mov eax, dword [ebp - 0x9c]
and eax, 0x80000007
jns 0x5478e8
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x547f6b
lea eax, [ebp - 0xb8]
mov ebx, dword [eax]
lea eax, [ebp - 0xb8]
add eax, 4
mov esi, dword [eax]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5158]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5154]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5150]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x514c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor esi, eax
xor esi, dword [ebp - 0x5148]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x513c]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d3c]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x493c]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x453c]
xor ebx, eax
xor ebx, dword [ebp - 0x5144]
xor esi, dword [ebp - 0x5140]
mov eax, ebx
and eax, 0xff
shl eax, 0x18
mov edx, ebx
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, ebx
and edx, 0xff0000
shr edx, 8
or eax, edx
and ebx, 0xff000000
shr ebx, 0x18
or eax, ebx
mov ebx, eax
mov eax, esi
and eax, 0xff
shl eax, 0x18
mov edx, esi
and edx, 0xff00
shl edx, 8
or eax, edx
mov edx, esi
and edx, 0xff0000
shr edx, 8
or eax, edx
and esi, 0xff000000
shr esi, 0x18
or eax, esi
mov esi, eax
lea eax, [ebp - 0xb8]
mov dword [eax], esi
lea eax, [ebp - 0xb8]
add eax, 4
mov dword [eax], ebx
mov eax, dword [ebp - 0x9c]
and eax, 0x80000007
jns 0x547eb8
dec eax
or eax, 0xfffffff8
inc eax
mov dword [ebp - 0xa0], eax
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0xa0]
call fcn.004035b8
mov eax, dword [ebp - 0xa0]
test eax, eax
jbe 0x547f6b
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xa8], 1
mov eax, dword [ebp - 0xb0]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
movzx ecx, byte [eax]
lea eax, [ebp - 0xb8]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
xor cl, byte [eax]
mov eax, dword [ebp - 0xb0]
cdq
push edx
push eax
mov eax, dword [ebp - 0xa8]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
sub eax, 1
sbb edx, 0
mov byte [eax], cl
inc dword [ebp - 0xa8]
dec dword [ebp - 0xd4]
jne 0x547ef3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0xf8]
xor ecx, ecx
mov edx, 0x10
call fcn.00403e38
push ebp
call fcn.00545d0c
pop ecx
xor eax, eax
push ebp
push 0x547fed
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0xf8]
xor edx, edx
mov eax, 1
call fcn.0053bc2c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x547ff4
push ebp
call fcn.00545d44
pop ecx
ret
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push 0x2710
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 0x90]
mov dl, 1
mov eax, dword [0x489df8]
call fcn.0048b8cc
mov dword [ebp - 0x44], eax
xor eax, eax
push ebp
push 0x548bfa
push dword fs:[eax]
mov dword fs:[eax], esp
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x34], eax
mov edx, 0x2710
mov eax, dword [ebp - 0x44]
call fcn.0048b97c
test al, al
je 0x548bd4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x5486a9
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x5486a9
cmp byte [ebp - 0x35], 0
jne 0x5486a9
mov eax, dword [0x582ca0]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x5486a9
mov eax, dword [0x582438]
cmp byte [eax], 0
jne 0x5486a9
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x56], 0
jne 0x5486a9
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [ebp - 0x34]
cmp eax, 0x4e20
jbe 0x5486b8
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
jmp 0x548be4
xor eax, eax
push ebp
push 0x548ba2
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x40f8]
mov ecx, 0x4000
mov eax, dword [ebp - 0x44]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x548b84
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 0x40]
call fcn.00405d04
lea eax, [ebp - 0xc]
call fcn.00405ad4
mov edx, eax
lea eax, [ebp - 0x40f8]
mov ecx, dword [ebp - 0x40]
call fcn.004035b8
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0xc]
call fcn.004058b0
jmp 0x548b71
mov edx, dword [ebp - 0x14]
mov eax, 0x548d3c
call fcn.00405bc0
test eax, eax
jle 0x548b98
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x51cc]
push eax
mov ecx, 0x548d3c
mov edx, 0x548d30
mov eax, dword [ebp - 0x14]
call fcn.0048db38
mov edx, dword [ebp - 0x51cc]
lea eax, [ebp - 0x14]
call fcn.0040567c
cmp dword [ebp - 0x10], 0
jne 0x54876e
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
jmp 0x548b98
mov eax, 0x30
call fcn.0048f218
mov dword [ebp - 0x54], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea edx, [ebp - 0x4128]
mov ecx, 0x30
mov eax, dword [ebp - 0x10]
call fcn.0048f3bc
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0
je 0x5487e5
mov eax, dword [ebp - 0xe0]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0xe0], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0xe0]
sub ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x54]
inc edx
mov eax, dword [ebp - 0x10]
call fcn.00405adc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebp - 0x10], 0
je 0x548b65
movzx eax, word [ebp - 0x4128]
add eax, 0xffffff9c
sub ax, 5
jb 0x548845
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
jmp 0x548b98
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x411c]
call fcn.00405d04
lea eax, [ebp - 0x18]
call fcn.00405ad4
mov edx, eax
mov ecx, dword [ebp - 0x411c]
mov eax, dword [ebp - 0x10]
call fcn.0048f3bc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x18]
call fcn.00405ad4
mov edx, dword [ebp - 0x411c]
call fcn.00526d30
cmp eax, dword [ebp - 0x4120]
je 0x5488e7
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
jmp 0x548b98
movzx eax, word [ebp - 0x4128]
sub ax, 0x64
je 0x548902
dec ax
je 0x548a4c
jmp 0x548b65
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebp - 0xc8], 0
jne 0x548951
mov dl, 1
mov eax, dword [0x41c3a4]
call fcn.00404674
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x411c]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc8]
call fcn.00421194
push 0
push 0
mov eax, dword [ebp - 0xc8]
call fcn.00421130
lea eax, [ebp - 0x18]
call fcn.00405ad4
mov edx, eax
mov ecx, dword [ebp - 0x411c]
mov eax, dword [ebp - 0xc8]
mov ebx, dword [eax]
call dword [ebx + 0x10]
push 0
push 0
mov eax, dword [ebp - 0xc8]
call fcn.00421130
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x582f40]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc8]
call fcn.00482804
mov edx, dword [0x582d10]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x548cbc
call fcn.004058fc
xor eax, eax
push ebp
push 0x548a09
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
call fcn.0042182c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x548a13
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp 0x548b71
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
mov dword [ebp - 0x60], eax
xor eax, eax
mov dword [ebp - 0x64], eax
xor eax, eax
push ebp
push 0x548b1f
push dword fs:[eax]
mov dword fs:[eax], esp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x64]
push eax
push 0
lea eax, [ebp - 0x18]
call fcn.00405ad4
lea ecx, [ebp - 0x60]
mov edx, dword [ebp - 0x411c]
call fcn.00478fe4
cmp dword [ebp - 0x60], 0
je 0x548b15
cmp dword [ebp - 0x64], 0
jle 0x548b15
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 0x64]
call fcn.00405d04
lea eax, [ebp - 0xc]
call fcn.00405ad4
mov edx, eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
call fcn.004035b8
mov byte [ebp - 0x35], 1
mov eax, dword [ebp - 0x60]
call fcn.00403228
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x50], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x548b31
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
jmp 0x548b98
mov eax, dword [ebp - 0x14]
call fcn.004058a4
cmp eax, 2
jge 0x548719
jmp 0x548b98
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048b5ac
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x548be4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x548bbd
mov edx, 0x2710
mov eax, dword [ebp - 0x44]
call fcn.0048b97c
test al, al
jne 0x548659
jmp 0x548be4
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], 3
jle 0x548be4
call fcn.00404fc4
jmp 0x548c0d
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x548c01
mov eax, dword [ebp - 0x44]
call fcn.004046a4
ret
push 1
call sub.kernel32.dll_Sleep_2
jmp 0x5461f1
mov eax, dword [ebp - 0x30]
call fcn.0048b798
mov eax, dword [ebp - 0x30]
call fcn.004046a4
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jne 0x546014
cmp dword [ebp - 0xc8], 0
je 0x548c3e
mov eax, dword [ebp - 0xc8]
call fcn.004046a4
cmp byte [ebp - 0x35], 0
je 0x548c69
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x548c69
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x548c69
cmp dword [ebp - 0xc], 0
je 0x548c69
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x28]
call fcn.00548d40
mov eax, dword [ebp - 0x28]
push eax
push 0x54bc74
mov eax, dword [ebp - 0x28]
call fcn.004257cc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x548cac
lea eax, [ebp - 0x51cc]
mov edx, 0xe
call fcn.00405608
lea eax, [ebp - 0x24]
mov edx, 7
call fcn.00405608
ret