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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa3c
push 0
push 0
dec ecx
jne 0x542c10
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x34], eax
xor eax, eax
push ebp
push 0x545b10
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc]
call fcn.004055e4
xor eax, eax
mov dword [ebp - 0x68], eax
xor eax, eax
mov dword [ebp - 0x6c], eax
xor eax, eax
mov dword [ebp - 0x70], eax
xor eax, eax
mov dword [ebp - 0x74], eax
mov byte [ebp - 0xe5], 1
mov byte [ebp - 0xe6], 1
mov byte [ebp - 0xe7], 1
mov byte [ebp - 0xe8], 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
mov edx, dword [0x583d28]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x545b28
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d52c
test al, al
je 0x542d1a
mov dl, 1
mov eax, dword [0x41c37c]
call fcn.00404674
mov dword [ebp - 0xe4], eax
xor eax, eax
push ebp
push 0x542ce0
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xe4]
call fcn.004218d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x542cea
mov eax, dword [ebp - 0xe4]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x542d04
cmp eax, 0
ja 0x542dd0
jmp 0x542d0a
jg 0x542dd0
lea eax, [ebp - 0xe4]
call fcn.004137f0
jmp 0x542dd0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [0x583d28]
mov edx, dword [edx]
lea eax, [ebp - 0x24]
mov ecx, 0x545b40
call fcn.004058fc
mov eax, dword [ebp - 0x24]
call fcn.0040d52c
test al, al
je 0x542db4
mov dl, 1
mov eax, dword [0x41c37c]
call fcn.00404674
mov dword [ebp - 0xe4], eax
xor eax, eax
push ebp
push 0x542d85
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xe4]
call fcn.004218d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x542d8f
mov eax, dword [ebp - 0xe4]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x542da5
cmp eax, 0
ja 0x542dd0
jmp 0x542da7
jg 0x542dd0
lea eax, [ebp - 0xe4]
call fcn.004137f0
jmp 0x542dd0
mov eax, dword [0x583f80]
cmp byte [eax], 0
jne 0x542dc8
mov eax, dword [0x58347c]
cmp dword [eax], 0
jne 0x542dd0
xor eax, eax
mov dword [ebp - 0xe4], 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
xor eax, eax
mov dword [ebp - 0x38], eax
cmp byte [0x58d678], 3
jae 0x545a9e
cmp byte [ebp - 0x41], 0
jne 0x545a9e
mov eax, dword [0x583cb8]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x545a9e
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0xd], 0
jne 0x545a9e
mov eax, dword [0x58344c]
cmp byte [eax], 0
jne 0x545a9e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 - 0x34]
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x98], edx
mov eax, 0x545b58
call fcn.0053d9d0
mov eax, dword [ebp - 0x34]
push eax
push 0x5467f8
mov eax, dword [ebp - 0x34]
call fcn.004257a4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x48], eax
mov byte [ebp - 0x41], 0
mov eax, dword [ebp - 0x34]
mov byte [eax + 0x9f], 0
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x34]
mov dword [edx + 0xa0], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x55], 0
mov eax, dword [ebp - 0x34]
mov byte [eax + 0x9e], 0
lea eax, [ebp - 0xc]
call fcn.004055e4
lea eax, [ebp - 0x14]
call fcn.004055e4
xor eax, eax
mov dword [ebp - 0x54], eax
xor ecx, ecx
mov dl, 1
mov eax, dword [0x48b590]
call fcn.0048d3bc
mov dword [ebp - 0x3c], 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
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x8c], edx
mov dword [eax + 0x88], 0x542b90
mov dl, 1
mov eax, dword [ebp - 0x3c]
call fcn.0048d4ac
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x54], edx
mov dword [eax + 0x50], 0x542b58
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x64], edx
mov dword [eax + 0x60], 0x542b80
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 - 0x38], 0
jne 0x543022
mov edx, dword [0x583710]
movzx edx, word [edx + 0x1da]
mov eax, dword [ebp - 0x3c]
call fcn.0048ce08
lea eax, [ebp - 0x51b0]
mov edx, dword [0x583710]
add edx, 0x19c
call fcn.00405848
mov edx, dword [ebp - 0x51b0]
mov eax, dword [ebp - 0x3c]
call fcn.0048cd88
lea eax, [ebp - 0x20]
mov edx, dword [0x583710]
add edx, 0x1de
call fcn.00405848
jmp 0x543070
mov edx, dword [0x583710]
movzx edx, word [edx + 0x1dc]
mov eax, dword [ebp - 0x3c]
call fcn.0048ce08
lea eax, [ebp - 0x51b4]
mov edx, dword [0x583710]
add edx, 0x1bb
call fcn.00405848
mov edx, dword [ebp - 0x51b4]
mov eax, dword [ebp - 0x3c]
call fcn.0048cd88
lea eax, [ebp - 0x20]
mov edx, dword [0x583710]
add edx, 0x1fd
call fcn.00405848
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 - 0x3c]
call fcn.0048ccc8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 - 0x34]
movzx eax, byte [eax + 0x9e]
or al, byte [ebp - 0x41]
jne 0x545a81
mov eax, dword [0x583cb8]
mov eax, dword [eax]
cmp byte [eax + 0xa4], 0
jne 0x545a81
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0xd], 0
jne 0x545a81
mov eax, dword [0x58344c]
cmp byte [eax], 0
jne 0x545a81
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebp - 0x34]
sub eax, dword [edx + 0xa0]
cmp eax, 0x2710
jbe 0x543119
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x545a81
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x90]
cmp byte [eax + 8], 0
je 0x545a75
cmp byte [ebp - 0x55], 0
jne 0x545a75
mov byte [ebp - 0x55], 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
lea eax, [ebp - 0x4140]
xor ecx, ecx
mov edx, 0x30
call fcn.00403e38
lea eax, [ebp - 0x51ac]
push eax
call sub.kernel32.dll_GetLocalTime
mov word [ebp - 0x4140], 0x3e8
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 - 0x20]
call fcn.0040567c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
je 0x5431c4
mov eax, dword [ebp - 0xf0]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0xb8], eax
lea eax, [ebp - 0x1c]
mov edx, dword [ebp - 0xb8]
call fcn.00405d04
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x4134], 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
lea eax, [ebp - 0x5154]
mov ecx, 0xff
mov edx, 0x1000
call fcn.00403e38
lea eax, [ebp - 0x519c]
mov ecx, 0xff
mov edx, 0x48
call fcn.00403e38
movzx eax, word [ebp - 0x51ac]
movzx edx, word [ebp - 0x51aa]
add eax, edx
movzx edx, word [ebp - 0x51a6]
add eax, edx
movzx edx, word [ebp - 0x51a4]
add eax, edx
movzx edx, word [ebp - 0x51a2]
add eax, edx
movzx edx, word [ebp - 0x51a0]
add eax, edx
mov dword [ebp - 0x88], eax
lea edx, [ebp - 0x51b8]
mov eax, dword [ebp - 0x88]
call fcn.0040cd84
mov eax, dword [ebp - 0x51b8]
lea edx, [ebp - 0x4154]
call fcn.0048050c
lea eax, [ebp - 0x9e]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
lea edx, [ebp - 0x9e]
lea eax, [ebp - 0x4154]
mov ecx, 8
call fcn.004035b8
mov dword [ebp - 0xa8], 0x40
mov ecx, 8
mov eax, dword [ebp - 0xa8]
xor edx, edx
div ecx
mov dword [ebp - 0xa8], eax
lea edx, [ebp - 0x5154]
mov eax, dword [0x583fa0]
mov ecx, 0x1000
call fcn.004035b8
lea edx, [ebp - 0x519c]
mov eax, dword [0x583cec]
mov ecx, 0x48
call fcn.004035b8
xor eax, eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xc0], 0x12
lea eax, [ebp - 0x519c]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xa4]
add eax, 3
xor edx, edx
div dword [ebp - 0xa8]
movzx eax, byte [ebp + edx - 0x9e]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xa4]
add eax, 2
xor edx, edx
div dword [ebp - 0xa8]
movzx eax, byte [ebp + edx - 0x9e]
shl eax, 8
add dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xa4]
inc eax
xor edx, edx
div dword [ebp - 0xa8]
movzx eax, byte [ebp + edx - 0x9e]
shl eax, 0x10
add dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xa4]
movzx eax, byte [ebp + eax - 0x9e]
shl eax, 0x18
add dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xac]
xor dword [eax], edx
mov eax, dword [ebp - 0xa4]
add eax, 4
xor edx, edx
div dword [ebp - 0xa8]
mov dword [ebp - 0xa4], edx
add dword [ebp - 0xfc], 4
dec dword [ebp - 0xc0]
jne 0x543322
lea eax, [ebp - 0xb4]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
mov dword [ebp - 0xc0], 9
lea eax, [ebp - 0x519c]
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0xb4]
mov ebx, dword [eax]
lea eax, [ebp - 0xb4]
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 - 0x519c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5198]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5194]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5190]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x518c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5188]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
xor esi, dword [ebp - 0x5158]
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 - 0xb4]
mov dword [eax], esi
lea eax, [ebp - 0xb4]
add eax, 4
mov dword [eax], ebx
movzx eax, byte [ebp - 0xb1]
movzx edx, byte [ebp - 0xb2]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0xb3]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0xb4]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xfc]
mov dword [edx], eax
movzx eax, byte [ebp - 0xad]
movzx edx, byte [ebp - 0xae]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0xaf]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0xb0]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0xfc]
mov dword [edx + 4], eax
add dword [ebp - 0xfc], 8
dec dword [ebp - 0xc0]
jne 0x5433fa
mov dword [ebp - 0xa4], 4
lea eax, [ebp - 0x5154]
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xc0], 0x80
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0xb4]
mov ebx, dword [eax]
lea eax, [ebp - 0xb4]
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 - 0x519c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5198]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5194]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5190]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x518c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5188]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
xor esi, dword [ebp - 0x5158]
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 - 0xb4]
mov dword [eax], esi
lea eax, [ebp - 0xb4]
add eax, 4
mov dword [eax], ebx
movzx eax, byte [ebp - 0xb1]
movzx edx, byte [ebp - 0xb2]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0xb3]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0xb4]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0x100]
mov dword [edx], eax
movzx eax, byte [ebp - 0xad]
movzx edx, byte [ebp - 0xae]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0xaf]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0xb0]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0x100]
mov dword [edx + 4], eax
add dword [ebp - 0x100], 8
dec dword [ebp - 0xc0]
jne 0x543a56
add dword [ebp - 0xfc], 0x400
dec dword [ebp - 0xa4]
jne 0x543a40
lea eax, [ebp - 0x1c]
call fcn.00405ad4
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0x18]
call fcn.00405ad4
mov dword [ebp - 0xd8], eax
lea eax, [ebp - 0xd4]
mov ecx, 0xff
mov edx, 8
call fcn.00403e38
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0xb8]
test eax, eax
jns 0x5440f2
add eax, 7
sar eax, 3
test eax, eax
jbe 0x544792
mov dword [ebp - 0xec], eax
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xc8]
mov ecx, 8
call fcn.004035b8
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0xcc]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xd4]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xcc]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xc4]
cmp dword [ebp - 0xc4], 9
jne 0x544123
mov eax, dword [ebp - 0xcc]
mov ebx, dword [eax]
mov eax, dword [ebp - 0xcc]
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 - 0x519c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5198]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5194]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5190]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x518c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5188]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
xor esi, dword [ebp - 0x5158]
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 - 0xcc]
mov dword [eax], esi
mov eax, dword [ebp - 0xcc]
add eax, 4
mov dword [eax], ebx
lea edx, [ebp - 0xd4]
mov eax, dword [ebp - 0xcc]
mov ecx, 8
call fcn.004035b8
mov eax, dword [ebp - 0xcc]
add eax, 8
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0xc8]
add eax, 8
mov dword [ebp - 0xc8], eax
dec dword [ebp - 0xec]
jne 0x544103
mov eax, dword [ebp - 0xb8]
and eax, 0x80000007
jns 0x5447a4
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x544e27
lea eax, [ebp - 0xd4]
mov ebx, dword [eax]
lea eax, [ebp - 0xd4]
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 - 0x519c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5198]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5194]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5190]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x518c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5188]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5184]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5180]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x517c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5178]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5174]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5170]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x516c]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5168]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x5164]
mov eax, ebx
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, ebx
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, ebx
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, ebx
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor esi, eax
xor esi, dword [ebp - 0x5160]
mov eax, esi
shr eax, 0x18
and eax, 0xff
mov eax, dword [ebp + eax*4 - 0x5154]
mov edx, esi
shr edx, 0x10
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4d54]
mov edx, esi
shr edx, 8
and edx, 0xff
xor eax, dword [ebp + edx*4 - 0x4954]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 - 0x4554]
xor ebx, eax
xor ebx, dword [ebp - 0x515c]
xor esi, dword [ebp - 0x5158]
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 - 0xd4]
mov dword [eax], esi
lea eax, [ebp - 0xd4]
add eax, 4
mov dword [eax], ebx
mov eax, dword [ebp - 0xb8]
and eax, 0x80000007
jns 0x544d74
dec eax
or eax, 0xfffffff8
inc eax
mov dword [ebp - 0xbc], eax
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xbc]
call fcn.004035b8
mov eax, dword [ebp - 0xbc]
test eax, eax
jbe 0x544e27
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0xcc]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xd4]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xcc]
cdq
push edx
push eax
mov eax, dword [ebp - 0xc4]
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 - 0xc4]
dec dword [ebp - 0xec]
jne 0x544daf
lea eax, [ebp - 0x110]
xor ecx, ecx
mov edx, 0x10
call fcn.00403e38
push ebp
call fcn.00542bb8
pop ecx
xor eax, eax
push ebp
push 0x544e75
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x110]
xor edx, edx
mov eax, 1
call fcn.0053d4d0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x544e7c
push ebp
call fcn.00542bf0
pop ecx
ret
push 1
call sub.kernel32.dll_Sleep_2
jmp 0x5430af
mov eax, dword [ebp - 0x3c]
call fcn.0048ceb4
mov eax, dword [ebp - 0x3c]
call fcn.004046a4
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 2
jne 0x542e44
cmp dword [ebp - 0xe4], 0
je 0x545ab2
mov eax, dword [ebp - 0xe4]
call fcn.004046a4
cmp byte [ebp - 0x41], 0
je 0x545ad4
mov eax, dword [ebp - 0x34]
cmp byte [eax + 0xd], 0
jne 0x545ad4
cmp dword [ebp - 0xc], 0
je 0x545ad4
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x34]
call fcn.0053ebec
mov eax, dword [ebp - 0x34]
push eax
push 0x546814
mov eax, dword [ebp - 0x34]
call fcn.004257a4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x545b17
lea eax, [ebp - 0x51e4]
mov edx, 0xe
call fcn.00405608
lea eax, [ebp - 0x30]
mov edx, 0xa
call fcn.00405608
ret