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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa39
push 0
push 0
dec ecx
jne 0x553134
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x556575
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x55654a
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x55654a
mov eax, dword [ebp - 0x28]
push eax
push 0x5596ac
mov eax, dword [ebp - 0x28]
call fcn.0042579c
mov edx, dword [0x588d18]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x55658c
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d524
test al, al
je 0x55326c
mov dl, 1
mov eax, dword [0x41c374]
call fcn.00404674
mov dword [ebp - 0xc8], eax
xor eax, eax
push ebp
push 0x553232
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
call fcn.004218d0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55323c
mov eax, dword [ebp - 0xc8]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x553256
cmp eax, 0
ja 0x553431
jmp 0x55325c
jg 0x553431
lea eax, [ebp - 0xc8]
call fcn.004137e8
jmp 0x553431
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x588d18]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x5565a4
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d524
test al, al
je 0x55335e
mov dl, 1
mov eax, dword [0x41c374]
call fcn.00404674
mov dword [ebp - 0xc8], eax
xor eax, eax
push ebp
push 0x553324
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
call fcn.004218d0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55332e
mov eax, dword [ebp - 0xc8]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x553348
cmp eax, 0
ja 0x553431
jmp 0x55334e
jg 0x553431
lea eax, [ebp - 0xc8]
call fcn.004137e8
jmp 0x553431
mov eax, dword [0x588f68]
cmp byte [eax], 0
jne 0x553429
mov eax, dword [0x58846c]
cmp dword [eax], 0
je 0x553429
mov eax, dword [0x588f68]
mov byte [eax], 1
mov eax, dword [0x58846c]
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
mov eax, dword [0x58846c]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov eax, dword [ebp - 0xc8]
call fcn.00421164
push 0
push 0
mov eax, dword [ebp - 0xc8]
call fcn.00421100
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x588f48]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc8]
call fcn.004936ac
jmp 0x553431
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x5564fa
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x5564fa
mov eax, dword [0x588ca8]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x5564fa
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x5564fa
mov eax, dword [0x58843c]
cmp byte [eax], 0
jne 0x5564fa
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x48baf0]
call fcn.0048d91c
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x54], edx
mov dword [eax + 0x50], 0x5529a8
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x64], edx
mov dword [eax + 0x60], 0x5529c4
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x8c], edx
mov dword [eax + 0x88], 0x5529d0
mov dl, 1
mov eax, dword [ebp - 0x30]
call fcn.0048da0c
cmp dword [ebp - 0x2c], 0
jne 0x55364b
lea eax, [ebp - 0x20]
mov edx, dword [0x588700]
add edx, 0x1de
call fcn.00405848
lea eax, [ebp - 0x5198]
mov edx, dword [0x588700]
add edx, 0x19c
call fcn.00405848
mov edx, dword [ebp - 0x5198]
mov eax, dword [ebp - 0x30]
call fcn.0048d2e8
mov edx, dword [0x588700]
movzx edx, word [edx + 0x1da]
mov eax, dword [ebp - 0x30]
call fcn.0048d368
jmp 0x553699
lea eax, [ebp - 0x519c]
mov edx, dword [0x588700]
add edx, 0x1bb
call fcn.00405848
mov edx, dword [ebp - 0x519c]
mov eax, dword [ebp - 0x30]
call fcn.0048d2e8
mov edx, dword [0x588700]
movzx edx, word [edx + 0x1dc]
mov eax, dword [ebp - 0x30]
call fcn.0048d368
lea eax, [ebp - 0x20]
mov edx, dword [0x588700]
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.0048d228
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x56], 0
jne 0x5564dd
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x5564dd
cmp byte [ebp - 0x35], 0
jne 0x5564dd
mov eax, dword [0x588ca8]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x5564dd
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x5564dd
mov eax, dword [0x58843c]
cmp byte [eax], 0
jne 0x5564dd
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x28]
sub eax, dword [edx + 0x58]
cmp eax, 0x2710
jbe 0x55377a
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x5564dd
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x5564d1
cmp byte [ebp - 0x49], 0
jne 0x555c5c
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x553846
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.0040cd7c
mov eax, dword [ebp - 0x51a0]
lea edx, [ebp - 0x413c]
call fcn.0048fd04
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 [0x588f88]
mov ecx, 0x1000
call fcn.004035b8
lea edx, [ebp - 0x5184]
mov eax, dword [0x588cdc]
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 0x5539da
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 0x553ab2
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 0x55410e
add dword [ebp - 0xe4], 0x400
dec dword [ebp - 0x88]
jne 0x5540f8
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 0x5547aa
add eax, 7
sar eax, 3
test eax, eax
jbe 0x554e4a
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 0x5547db
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 0x5547bb
mov eax, dword [ebp - 0x9c]
and eax, 0x80000007
jns 0x554e5c
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x5554df
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 0x55542c
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 0x5554df
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 0x555467
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.005530dc
pop ecx
xor eax, eax
push ebp
push 0x555583
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0xf8]
xor edx, edx
mov eax, 1
call fcn.00541908
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x55558a
push ebp
call fcn.00553114
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x48ba74]
call fcn.0048d548
mov dword [ebp - 0x44], eax
xor eax, eax
push ebp
push 0x5564ca
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.0048d5f8
test al, al
je 0x5564a4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x555da9
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x555da9
cmp byte [ebp - 0x35], 0
jne 0x555da9
mov eax, dword [0x588ca8]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x555da9
mov eax, dword [0x58843c]
cmp byte [eax], 0
jne 0x555da9
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x56], 0
jne 0x555da9
call sub.kernel32.dll_GetTickCount_1
sub eax, dword [ebp - 0x34]
cmp eax, 0x4e20
jbe 0x555db8
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048d228
jmp 0x5564b4
xor eax, eax
push ebp
push 0x556472
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 0x556454
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 0x556441
mov edx, dword [ebp - 0x14]
mov eax, 0x5565ec
call fcn.00405bc0
test eax, eax
jle 0x556468
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x51cc]
push eax
mov ecx, 0x5565ec
mov edx, 0x5565e0
mov eax, dword [ebp - 0x14]
call fcn.00499378
mov edx, dword [ebp - 0x51cc]
lea eax, [ebp - 0x14]
call fcn.0040567c
cmp dword [ebp - 0x10], 0
jne 0x555e6e
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048d228
jmp 0x556468
mov eax, 0x30
call fcn.0049a704
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.0049a8a8
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0
je 0x555f07
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x556435
movzx eax, word [ebp - 0x4128]
add eax, 0xffffff9c
sub ax, 5
jb 0x555fa8
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048d228
jmp 0x556468
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.0049a8a8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.004d31b8
cmp eax, dword [ebp - 0x4120]
je 0x5560ad
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048d228
jmp 0x556468
movzx eax, word [ebp - 0x4128]
sub ax, 0x64
je 0x5560c8
dec ax
je 0x556297
jmp 0x556435
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x556139
mov dl, 1
mov eax, dword [0x41c374]
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.00421164
push 0
push 0
mov eax, dword [ebp - 0xc8]
call fcn.00421100
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.00421100
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x588f48]
mov eax, dword [eax]
mov edx, dword [ebp - 0xc8]
call fcn.004936ac
mov edx, dword [0x588d18]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x5565a4
call fcn.004058fc
xor eax, eax
push ebp
push 0x556232
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc8]
call fcn.004217fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55623c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x556441
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x5563cd
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
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.00493b4c
cmp dword [ebp - 0x60], 0
je 0x5563c3
cmp dword [ebp - 0x64], 0
jle 0x5563c3
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 0x5563df
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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.0048d228
jmp 0x556468
mov eax, dword [ebp - 0x14]
call fcn.004058a4
cmp eax, 2
jge 0x555e19
jmp 0x556468
xor edx, edx
mov eax, dword [ebp - 0x30]
call fcn.0048d228
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5564b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x55648d
mov edx, 0x2710
mov eax, dword [ebp - 0x44]
call fcn.0048d5f8
test al, al
jne 0x555d59
jmp 0x5564b4
inc dword [ebp - 0x48]
cmp dword [ebp - 0x48], 3
jle 0x5564b4
call fcn.00404fc4
jmp 0x5564dd
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5564d1
mov eax, dword [ebp - 0x44]
call fcn.004046a4
ret
push 1
call sub.kernel32.dll_Sleep_2
jmp 0x553702
mov eax, dword [ebp - 0x30]
call fcn.0048d414
mov eax, dword [ebp - 0x30]
call fcn.004046a4
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jne 0x5534c2
cmp dword [ebp - 0xc8], 0
je 0x55650e
mov eax, dword [ebp - 0xc8]
call fcn.004046a4
cmp byte [ebp - 0x35], 0
je 0x556539
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0xd], 0
jne 0x556539
mov eax, dword [ebp - 0x28]
cmp byte [eax + 0x55], 0
jne 0x556539
cmp dword [ebp - 0xc], 0
je 0x556539
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x28]
call fcn.005565f0
mov eax, dword [ebp - 0x28]
push eax
push 0x5596c0
mov eax, dword [ebp - 0x28]
call fcn.0042579c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x55657c
lea eax, [ebp - 0x51cc]
mov edx, 0xe
call fcn.00405608
lea eax, [ebp - 0x24]
mov edx, 7
call fcn.00405608
ret