Function at 0x4ffb50
Capabilities:
Check mutex on windows
Copy file
Create process on windows
Terminate thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x554c06
mov eax, dword fs:[0]
push eax
sub esp, 0x930
mov eax, dword [0x5c2b80]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x4a0], ebx
mov dword [ebp - 0x498], ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x488], eax
xor ecx, ecx
mov dword [ebp - 0x49c], ecx
xor al, al
mov byte [ebp - 0x491], al
mov byte [ebp - 0x4a2], al
push 0x59fb28
lea ecx, [ebp - 0x4c0]
call fcn.00457210
mov dword [ebp - 4], 0
mov ecx, 0x5a0e60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x828]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 1
mov ecx, 0x5a0e80
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x63c]
call fcn.00457210
mov byte [ebp - 4], 2
push 0
lea ecx, [ebp - 0x4c0]
push ecx
push esi
mov edx, eax
mov ecx, 0x80000002
call fcn.00457fd0
add esp, 0xc
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x63c]
add edx, 0xfffffff0
lea ecx, [edx + 0xc]
or edi, 0xffffffff
mov eax, edi
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x4ffc3c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x828]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffc61
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x4c0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffc89
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push 0x59fb28
lea ecx, [ebp - 0x4b8]
call fcn.00457210
mov dword [ebp - 4], 6
mov ecx, 0x5a0e60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x85c]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 7
mov ecx, 0x5a0e80
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x830]
call fcn.00457210
mov byte [ebp - 4], 8
push 0
lea ecx, [ebp - 0x4b8]
push ecx
push esi
mov edx, eax
mov ecx, 0x80000001
call fcn.00457fd0
add esp, 0xc
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x830]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffd14
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x85c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffd39
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x4b8]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffd61
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 0x2c], 0
mov ecx, 0x5a0ec0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x884]
call fcn.00457210
mov dword [ebp - 4], 0xc
lea esi, [ebx + 0x60]
mov dword [ebp - 0x38], esi
push eax
mov edx, esi
lea ecx, [ebp - 0x2c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x884]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffdbe
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x2c]
cmp dword [eax - 0xc], 0
je 0x4ffe41
mov ecx, 0x5a0ed8
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x88c]
call fcn.00457210
mov byte [ebp - 4], 0x10
mov ecx, 1
mov dword [ebp - 0x49c], ecx
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
test eax, eax
jne 0x4ffe03
push 0x80004005
call fcn.00456ea0
mov eax, dword [ebp - 0x2c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4ffe2c
test dx, dx
je 0x4ffe28
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4ffe2c
add eax, 4
add ecx, 4
test dx, dx
jne 0x4ffe06
xor eax, eax
jmp 0x4ffe31
sbb eax, eax
or eax, 1
test eax, eax
sete al
test al, al
mov byte [ebp - 0x47e], 1
jne 0x4ffe48
mov byte [ebp - 0x47e], 0
mov dword [ebp - 4], 0xe
mov eax, dword [ebp - 0x49c]
test al, 1
je 0x4ffe87
and eax, 0xfffffffe
mov dword [ebp - 0x49c], eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x88c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffe87
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47e], 0
je 0x4ffe97
mov byte [ebx + 0xcd], 0
mov ecx, 0x59fa20
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x894]
call fcn.00457210
mov byte [ebp - 4], 0x12
mov ecx, dword [eax]
test ecx, ecx
jne 0x4ffebc
or eax, 0xffffffff
jmp 0x4ffee0
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
jge 0x4ffec9
or eax, 0xffffffff
jmp 0x4ffee0
push ecx
push eax
call fcn.0052b75b
add esp, 8
test eax, eax
jne 0x4ffedc
or eax, 0xffffffff
jmp 0x4ffee0
sub eax, dword [esi]
sar eax, 1
test eax, eax
setns byte [ebp - 0x47d]
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x894]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4fff0e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47d], 0
je 0x4fff1e
mov byte [ebx + 0xcd], 0
cmp byte [ebx + 0xcd], 0
je 0x5004da
mov dword [ebp - 0xa4], 0
lea ecx, [ebp - 0xa4]
call fcn.0045a130
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x8c], 0
mov ecx, 0x5a0ef0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x8a4]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x89c]
call fcn.00457760
mov byte [ebp - 4], 0x16
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push esi
mov edx, eax
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x17
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0xa4]
lea ecx, [ebp - 0x8c]
call fcn.00457530
add esp, 4
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x89c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4fffce
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x8a4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4ffff3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a0ec0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x8ac]
call fcn.00457210
mov byte [ebp - 4], 0x1d
mov ecx, dword [eax]
test ecx, ecx
jne 0x500018
or esi, 0xffffffff
jmp 0x500040
mov eax, dword [ebx + 0x60]
cmp dword [eax - 0xc], 0
jge 0x500026
or esi, 0xffffffff
jmp 0x500040
push ecx
push eax
call fcn.0052b75b
add esp, 8
mov esi, eax
test esi, esi
jne 0x50003b
or esi, 0xffffffff
jmp 0x500040
sub esi, dword [ebx + 0x60]
sar esi, 1
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x8ac]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500068
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
test esi, esi
js 0x5001db
mov ecx, 0x5a0ec0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x8b4]
call fcn.00457210
mov byte [ebp - 4], 0x1f
mov ecx, dword [eax]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x500090
sub ecx, edx
sar ecx, 1
inc ecx
add esi, ecx
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x8b4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5000c7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea ecx, [ebx + 0x60]
mov eax, dword [ecx]
mov eax, dword [eax - 0xc]
sub eax, esi
push eax
push esi
lea eax, [ebp - 0x8cc]
push eax
call fcn.0045bae0
mov esi, eax
mov byte [ebp - 4], 0x21
push dword [ebp - 0x1c]
push 0
lea eax, [ebp - 0x8c4]
push eax
lea ecx, [ebx + 0x60]
call fcn.0045bae0
mov byte [ebp - 4], 0x22
push esi
mov edx, eax
lea ecx, [ebp - 0x8bc]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x23
mov ecx, dword [eax]
lea edx, [ecx - 0x10]
mov esi, dword [ebx + 0x60]
sub esi, 0x10
cmp edx, esi
je 0x50016c
cmp dword [esi + 0xc], 0
jl 0x500160
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x500160
mov ecx, edx
call fcn.00456280
mov dword [ebp - 0x484], eax
mov eax, edi
lea ecx, [esi + 0xc]
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x500152
mov ecx, dword [esi]
mov eax, dword [ecx]
push esi
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x484]
add eax, 0x10
mov dword [ebx + 0x60], eax
jmp 0x50016c
push dword [ecx - 0xc]
push ecx
lea ecx, [ebx + 0x60]
call fcn.004573c0
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x8bc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500191
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x8c4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5001b6
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x8cc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5001db
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x59fa20
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6d4]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x27
push 0x5928f8
lea ecx, [ebp - 0x4cc]
call fcn.00457210
mov byte [ebp - 4], 0x28
push esi
mov edx, eax
lea ecx, [ebp - 0x8c8]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x29
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
lea ecx, [ebx + 0x60]
call fcn.0045c160
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x8c8]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500253
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0x4cc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500278
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x6d4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50029d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x46c]
push eax
call fcn.00456ec0
mov edx, dword [ebp - 0x8c]
mov ecx, eax
call fcn.00471420
mov ecx, eax
cmp ecx, 0xffffffff
setne al
test al, al
je 0x500490
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0x40
push 0
lea eax, [ebp - 0x1a8]
push eax
call fcn.0052ebd0
add esp, 0xc
mov dword [ebp - 0x1ac], 0x44
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x47c], xmm0
call fcn.00456bd0
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
test eax, eax
jne 0x500311
push 0x80004005
call fcn.00456ea0
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x2e
mov ecx, 0x5a0f10
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4d4]
call fcn.00457210
mov byte [ebp - 4], 0x2f
push dword [ebx + 0x60]
push dword [ebp - 0x8c]
push dword [eax]
lea eax, [ebp - 0x1c]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0x4d4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500378
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x1c]
cmp dword [esi - 4], 1
jle 0x50038f
push dword [esi - 0xc]
lea ecx, [ebp - 0x1c]
call fcn.00456d60
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x47c]
push eax
lea eax, [ebp - 0x1ac]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push esi
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x500471
push dword [ebp - 0x47c]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call edi
push dword [ebp - 0x478]
call edi
mov ecx, dword [ebp - 0x488]
call fcn.00456d00
mov byte [ebp - 4], 0x1b
lea edx, [esi - 0x10]
lea eax, [edx + 0xc]
or esi, 0xffffffff
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5003fd
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x8c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500422
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0xa4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, esi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500447
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x50046a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov al, 1
jmp 0x505ffd
mov byte [ebp - 4], 0x1b
add esi, 0xfffffff0
lea eax, [esi + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500490
mov ecx, dword [esi]
mov eax, dword [ecx]
push esi
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x8c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5004b5
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0xa4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5004da
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx]
lea ecx, [ebp - 0x858]
push ecx
mov ecx, ebx
mov eax, dword [eax + 8]
call eax
mov byte [ebp - 4], 0x38
push dword [eax]
push 0
push 0
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexW]
call esi
mov dword [ebx + 0xdc], eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x858]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500527
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x500717
mov eax, dword [ebx + 0xdc]
test eax, eax
je 0x500549
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.0052b6ba
cdq
mov ecx, 0x1f40
idiv ecx
add edx, 0x7d0
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebx]
lea ecx, [ebp - 0x4dc]
push ecx
mov ecx, ebx
mov eax, dword [eax + 8]
call eax
mov byte [ebp - 4], 0x3a
push dword [eax]
push 0
push 0
call esi
mov dword [ebx + 0xdc], eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x4dc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5005aa
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x500717
mov eax, dword [ebx + 0xdc]
test eax, eax
je 0x5005d6
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebx + 0xdc], 0
mov ecx, 0x5a0f30
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7dc]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x3c
mov ecx, 0x5a0f60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4e4]
call fcn.00457210
mov byte [ebp - 4], 0x3d
push esi
mov edx, eax
lea ecx, [ebp - 0x6dc]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x3e
mov ecx, dword [eax]
lea edx, [ecx - 0x10]
mov ebx, dword [ebp - 0x488]
mov esi, dword [ebx]
sub esi, 0x10
cmp edx, esi
je 0x50067e
cmp dword [esi + 0xc], 0
jl 0x500673
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x500673
mov ecx, edx
call fcn.00456280
mov dword [ebp - 0x484], eax
mov eax, edi
lea ecx, [esi + 0xc]
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x500666
mov ecx, dword [esi]
mov eax, dword [ecx]
push esi
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x484]
add eax, 0x10
mov dword [ebx], eax
jmp 0x50067e
push dword [ecx - 0xc]
push ecx
mov ecx, ebx
call fcn.004573c0
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x6dc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5006a3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x3c
mov edx, dword [ebp - 0x4e4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5006c8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x7dc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5006ed
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], edi
dec edi
test edi, edi
jg 0x500710
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
xor al, al
jmp 0x505ffd
push 0
call fcn.0052b70a
add esp, 4
push edx
push eax
push 0x5911c4
lea eax, [ebx + 0x8c]
push eax
call fcn.00457480
add esp, 0x10
mov esi, dword [ebp - 0x488]
push esi
lea eax, [ebp - 0x8d4]
push eax
call fcn.0050ec50
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 0x43
mov edx, dword [eax]
lea eax, [edx - 0x10]
mov dword [ebp - 0x484], eax
mov ecx, dword [ebx + 0xb8]
sub ecx, 0x10
mov dword [ebp - 0x20], ecx
cmp eax, ecx
je 0x5007d2
lea esi, [ecx + 0xc]
mov dword [ebp - 0x1c], esi
cmp dword [ecx + 0xc], 0
mov esi, dword [ebp - 0x488]
jl 0x5007c3
mov eax, dword [eax]
cmp eax, dword [ecx]
jne 0x5007c3
mov ecx, dword [ebp - 0x484]
call fcn.00456280
mov dword [ebp - 0x484], eax
mov eax, edi
mov ecx, dword [ebp - 0x1c]
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x5007b0
mov edx, dword [ebp - 0x20]
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x484]
add eax, 0x10
lea ecx, [ebx + 0xb8]
mov dword [ecx], eax
jmp 0x5007d8
push dword [edx - 0xc]
push edx
lea ecx, [ebx + 0xb8]
call fcn.004573c0
lea ecx, [ebx + 0xb8]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x8d4]
mov dword [ebp - 0x484], eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x8d4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500816
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
je 0x50082d
push esi
mov ecx, ebx
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
mov ecx, ebx
call fcn.00512b80
mov byte [ebp - 0x489], al
test al, al
je 0x5009bf
mov dword [ebp - 0x5c], 0
lea eax, [ebp - 0x5c]
push eax
mov ecx, ebx
call fcn.00518110
mov byte [ebp - 4], 0x46
mov eax, dword [ebp - 0x5c]
cmp dword [eax - 0xc], 0
je 0x50099d
mov ecx, 0x591500
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4ec]
call fcn.00457210
mov byte [ebp - 4], 0x47
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.0045bca0
mov byte [ebp - 0x47d], al
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0x4ec]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5008b4
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47d], 0
je 0x5008cd
mov word [ebx + 0xc8], 1
mov byte [ebx + 0xca], 0
mov ecx, 0x5a0f7c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6e4]
call fcn.00457210
mov byte [ebp - 4], 0x49
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.0045bca0
mov byte [ebp - 0x47d], al
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0x6e4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50091c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47d], 0
je 0x500935
mov word [ebx + 0xc8], 0x100
mov byte [ebx + 0xca], 0
mov ecx, 0x5a0f8c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4f4]
call fcn.00457210
mov byte [ebp - 4], 0x4b
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.0045bca0
mov byte [ebp - 0x47d], al
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0x4f4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500984
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47d], 0
je 0x50099d
mov word [ebx + 0xc8], 0
mov byte [ebx + 0xca], 1
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5009bf
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x47d], 0
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x47e], 0
xor eax, eax
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x44], eax
cmp byte [ebx + 0xc8], al
je 0x500c11
mov eax, 0x5cc480
mov dword [ebp - 0x44], eax
mov eax, 0x5cc464
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x68], 0
mov ecx, 0x5a0f9c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6ec]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x4e
mov ecx, 0x5a0fb0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4fc]
call fcn.00457210
mov byte [ebp - 4], 0x4f
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [ebp - 0x4ac], eax
mov byte [ebp - 4], 0x51
push esi
lea edx, [ebp - 0x4ac]
lea ecx, [ebp - 0x8c0]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x52
push eax
lea esi, [ebx + 0x60]
mov edx, esi
lea ecx, [ebp - 0x68]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x54
mov edx, dword [ebp - 0x8c0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500aa8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x56
mov edx, dword [ebp - 0x4ac]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500acd
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x58
mov edx, dword [ebp - 0x4fc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500af2
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x6ec]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500b17
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x68]
cmp dword [eax - 0xc], 0
jne 0x500b85
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push dword [0x5cc480]
call fcn.00457210
mov byte [ebp - 4], 0x5c
lea eax, [ebp - 0x504]
push eax
mov byte [ebp - 4], 0x5a
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [ebp - 0x68]
call fcn.0045be70
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x504]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500b7e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x68]
cmp dword [eax - 0xc], 0
jge 0x500b91
push 0x80070057
call fcn.00456ea0
cmp word [eax], 0x5f
je 0x500be6
mov byte [ebp - 0x47e], 1
mov ecx, 0x591500
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7e4]
call fcn.00457210
mov byte [ebp - 4], 0x5f
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x7e4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500be6
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x68]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501071
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x501071
cmp byte [ebx + 0xc9], al
je 0x500e43
mov eax, 0x5cc450
mov dword [ebp - 0x44], eax
mov eax, 0x5cc43c
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x54], 0
mov ecx, 0x5a0f9c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x514]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x62
mov ecx, 0x5a0fd0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6f4]
call fcn.00457210
mov byte [ebp - 4], 0x63
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [ebp - 0x4bc], eax
mov byte [ebp - 4], 0x65
push esi
lea edx, [ebp - 0x4bc]
lea ecx, [ebp - 0x50c]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x66
push eax
lea esi, [ebx + 0x60]
mov edx, esi
lea ecx, [ebp - 0x54]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x50c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500cda
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0x4bc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500cff
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x6c
mov edx, dword [ebp - 0x6f4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500d24
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x6e
mov edx, dword [ebp - 0x514]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500d49
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x54]
cmp dword [eax - 0xc], 0
jne 0x500db7
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push dword [0x5cc450]
call fcn.00457210
mov byte [ebp - 4], 0x70
lea eax, [ebp - 0x860]
push eax
mov byte [ebp - 4], 0x6e
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x71
push eax
lea ecx, [ebp - 0x54]
call fcn.0045be70
mov byte [ebp - 4], 0x6e
mov edx, dword [ebp - 0x860]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500db0
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x54]
cmp dword [eax - 0xc], 0
jge 0x500dc3
push 0x80070057
call fcn.00456ea0
cmp word [eax], 0x5f
je 0x500e18
mov byte [ebp - 0x47e], 1
mov ecx, 0x5a0f7c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x51c]
call fcn.00457210
mov byte [ebp - 4], 0x73
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x6e
mov edx, dword [ebp - 0x51c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500e18
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501071
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x501071
cmp byte [ebx + 0xca], al
je 0x50106e
mov eax, 0x5cc428
mov dword [ebp - 0x44], eax
mov eax, 0x5c4b04
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x58], 0
mov ecx, 0x5a0f9c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7ec]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x76
mov ecx, 0x5a0ff0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x524]
call fcn.00457210
mov byte [ebp - 4], 0x77
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [ebp - 0x4b0], eax
mov byte [ebp - 4], 0x79
push esi
lea edx, [ebp - 0x4b0]
lea ecx, [ebp - 0x6fc]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x7a
push eax
lea esi, [ebx + 0x60]
mov edx, esi
lea ecx, [ebp - 0x58]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x7c
mov edx, dword [ebp - 0x6fc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500f0c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x7e
mov edx, dword [ebp - 0x4b0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500f31
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x80
mov edx, dword [ebp - 0x524]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500f56
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x82
mov edx, dword [ebp - 0x7ec]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500f7b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x58]
cmp dword [eax - 0xc], 0
jne 0x500fe9
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push dword [0x5cc428]
call fcn.00457210
mov byte [ebp - 4], 0x84
lea eax, [ebp - 0x52c]
push eax
mov byte [ebp - 4], 0x82
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x85
push eax
lea ecx, [ebp - 0x58]
call fcn.0045be70
mov byte [ebp - 4], 0x82
mov edx, dword [ebp - 0x52c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x500fe2
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x58]
cmp dword [eax - 0xc], 0
jge 0x500ff5
push 0x80070057
call fcn.00456ea0
cmp word [eax], 0x5f
je 0x50104a
mov byte [ebp - 0x47e], 1
mov ecx, 0x5a0f8c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x704]
call fcn.00457210
mov byte [ebp - 4], 0x87
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x82
mov edx, dword [ebp - 0x704]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50104a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501071
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x501071
lea esi, [ebx + 0x60]
mov dword [ebp - 0x24], 0
mov ecx, 0x59a7c0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x534]
call fcn.00457210
mov byte [ebp - 4], 0x8a
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x534]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5010c7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47e], 0
jne 0x501417
mov ecx, 0x5a1010
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x53c]
call fcn.00457210
mov byte [ebp - 4], 0x8f
push eax
mov edx, esi
lea ecx, [ebp - 0x8a0]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x90
push eax
lea ecx, [ebp - 0x24]
call fcn.0045be70
mov byte [ebp - 4], 0x8f
mov edx, dword [ebp - 0x8a0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501131
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x53c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501156
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x24]
cmp dword [eax - 0xc], 0
jne 0x5011bc
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push str.sro
call fcn.00457210
mov byte [ebp - 4], 0x93
lea eax, [ebp - 0x70c]
push eax
mov byte [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x94
push eax
lea ecx, [ebp - 0x24]
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x70c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5011bc
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x47d], 1
mov ecx, 0x591440
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x544]
call fcn.00457210
mov byte [ebp - 4], 0x96
lea edx, [ebp - 0x24]
mov ecx, eax
call fcn.0045bca0
mov byte [ebp - 0x47f], al
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x544]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501212
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x501289
mov eax, 0x5cc480
mov dword [ebp - 0x44], eax
mov eax, 0x5cc464
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov ecx, 0x591500
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7f4]
call fcn.00457210
mov byte [ebp - 4], 0x98
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x7f4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50127d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebx + 0xc8], 1
jmp 0x501410
mov ecx, 0x591b24
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x54c]
call fcn.00457210
mov byte [ebp - 4], 0x9a
lea edx, [ebp - 0x24]
mov ecx, eax
call fcn.0045bca0
mov byte [ebp - 0x47f], al
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x54c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5012d8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x50134f
mov eax, 0x5cc450
mov dword [ebp - 0x44], eax
mov eax, 0x5cc43c
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov ecx, 0x5a0f7c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x714]
call fcn.00457210
mov byte [ebp - 4], 0x9c
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x714]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501343
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebx + 0xc9], 1
jmp 0x501410
mov ecx, 0x591398
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x554]
call fcn.00457210
mov byte [ebp - 4], 0x9e
lea edx, [ebp - 0x24]
mov ecx, eax
call fcn.0045bca0
mov byte [ebp - 0x47f], al
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x554]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50139e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x501417
mov eax, 0x5cc428
mov dword [ebp - 0x44], eax
mov eax, 0x5c4b04
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x20], 5
mov ecx, 0x5a0f8c
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x870]
call fcn.00457210
mov byte [ebp - 4], 0xa0
lea ecx, [ebx + 0x50]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x870]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501409
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebx + 0xca], 1
mov byte [ebp - 0x47e], 1
mov ecx, 0x5a10c0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x55c]
call fcn.00457210
mov byte [ebp - 4], 0xa2
mov ecx, dword [eax]
test ecx, ecx
jne 0x50143c
or eax, 0xffffffff
jmp 0x501460
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
jge 0x501449
or eax, 0xffffffff
jmp 0x501460
push ecx
push eax
call fcn.0052b75b
add esp, 8
test eax, eax
jne 0x50145c
or eax, 0xffffffff
jmp 0x501460
sub eax, dword [esi]
sar eax, 1
test eax, eax
setns byte [ebp - 0x47f]
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x55c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50148e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x50149e
mov byte [ebx + 0xd1], 1
cmp byte [ebx + 0xd1], 0
jne 0x501f35
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push 0x5911c0
call fcn.00457210
mov byte [ebp - 4], 0xa4
mov ecx, 0x5a10f0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x71c]
call fcn.00457210
mov byte [ebp - 4], 0xa5
lea ecx, [ebx + 0x70]
lea edx, [ebx + 0x6c]
push eax
push ecx
push edx
mov byte [ebp - 4], 0xa6
mov ecx, ebx
call fcn.0050d720
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x71c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501515
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1110
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x564]
call fcn.00457210
mov byte [ebp - 4], 0xa8
push ecx
mov ecx, ebx
call fcn.00515bf0
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x564]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50155c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1140
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x56c]
call fcn.00457210
mov byte [ebp - 4], 0xaa
push eax
mov edx, esi
lea ecx, [ebp - 0x7fc]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0xab
push eax
lea ecx, [ebx + 0xb0]
call fcn.0045be70
mov byte [ebp - 4], 0xaa
mov edx, dword [ebp - 0x7fc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5015bc
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x56c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5015e1
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0xb0]
cmp dword [eax - 0xc], 0
jne 0x50164d
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push 0x5a1160
call fcn.00457210
mov byte [ebp - 4], 0xae
lea eax, [ebp - 0x724]
push eax
mov byte [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0xaf
push eax
lea ecx, [ebx + 0xb0]
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x724]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50164d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x574]
call fcn.00457210
mov byte [ebp - 4], 0xb1
mov edx, eax
lea ecx, [ebx + 0xb0]
call fcn.0045bca0
mov byte [ebp - 0x47f], al
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x574]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50169f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x501764
mov ecx, ebx
call fcn.00519360
mov ecx, 0x5a11b0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x57c]
call fcn.00457210
mov byte [ebp - 4], 0xb3
push ecx
mov dword [ebp - 0x484], esp
mov esi, esp
mov dword [ebp - 0x1c], esi
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0xb5
mov ecx, 0x5a10f0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x8b8]
call fcn.00457210
mov byte [ebp - 4], 0xb6
push eax
lea eax, [ebx + 0x70]
push eax
lea eax, [ebx + 0x6c]
push eax
mov byte [ebp - 4], 0xb7
mov ecx, ebx
call fcn.0050d720
mov byte [ebp - 4], 0xb3
mov edx, dword [ebp - 0x8b8]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50173f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x57c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501764
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a11d0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x584]
call fcn.00457210
mov byte [ebp - 4], 0xba
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x72c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0xbb
push eax
lea ecx, [ebx + 0xb4]
call fcn.0045be70
mov byte [ebp - 4], 0xba
mov edx, dword [ebp - 0x72c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5017c5
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x584]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5017ea
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0xb4]
cmp dword [eax - 0xc], 0
jne 0x501856
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push 0x5a11f0
call fcn.00457210
mov byte [ebp - 4], 0xbe
lea eax, [ebp - 0x804]
push eax
mov byte [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0xbf
push eax
lea ecx, [ebx + 0xb4]
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x804]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501856
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x58c]
call fcn.00457210
mov byte [ebp - 4], 0xc1
mov edx, eax
lea ecx, [ebx + 0xb4]
call fcn.0045bca0
mov byte [ebp - 0x47f], al
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x58c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5018a8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x50196d
mov ecx, ebx
call fcn.00519e00
mov ecx, 0x5a1240
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x594]
call fcn.00457210
mov byte [ebp - 4], 0xc3
push ecx
mov dword [ebp - 0x484], esp
mov esi, esp
mov dword [ebp - 0x1c], esi
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0xc5
mov ecx, 0x5a10f0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x734]
call fcn.00457210
mov byte [ebp - 4], 0xc6
push eax
lea eax, [ebx + 0x70]
push eax
lea eax, [ebx + 0x6c]
push eax
mov byte [ebp - 4], 0xc7
mov ecx, ebx
call fcn.0050d720
mov byte [ebp - 4], 0xc3
mov edx, dword [ebp - 0x734]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501948
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x594]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50196d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 0xbc], 0
lea ecx, [ebp - 0xbc]
call fcn.0045ef80
mov byte [ebp - 4], 0xca
mov dword [ebp - 0x50], 0
lea ecx, [ebp - 0x50]
call fcn.0045a980
mov byte [ebp - 4], 0xcb
push 0x5923e4
lea edx, [ebp - 0xbc]
lea ecx, [ebp - 0x59c]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 0xcc
lea ecx, [ebp - 0x50]
push ecx
mov edx, eax
lea ecx, [ebp - 0x880]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xcd
push eax
lea ecx, [ebx + 0xac]
call fcn.0045be70
mov byte [ebp - 4], 0xcc
mov edx, dword [ebp - 0x880]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5019ff
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xcb
mov edx, dword [ebp - 0x59c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501a24
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea ecx, [ebx + 0xac]
call fcn.0045f750
test al, al
je 0x501ebd
mov dword [ebp - 0x70], 0
mov ecx, 0x5a0ef0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5ac]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xd0
mov ecx, 0x5a1254
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x80c]
call fcn.00457210
mov byte [ebp - 4], 0xd1
push eax
lea edx, [ebx + 0xac]
lea ecx, [ebp - 0x5a4]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xd2
lea ecx, [ebp - 0x50]
push ecx
mov edx, eax
lea ecx, [ebp - 0x73c]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xd3
push esi
mov edx, eax
lea ecx, [ebp - 0x70]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xd5
mov edx, dword [ebp - 0x73c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501ad8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xd7
mov edx, dword [ebp - 0x5a4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501afd
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xd9
mov edx, dword [ebp - 0x80c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501b22
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xdb
mov edx, dword [ebp - 0x5ac]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501b47
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea ecx, [ebp - 0x744]
call fcn.0045a130
mov byte [ebp - 4], 0xdd
push 0
push dword [ebp - 0x70]
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov esi, eax
mov byte [ebp - 4], 0xdb
mov edx, dword [ebp - 0x744]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501b8a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
test esi, esi
je 0x501e6d
mov dword [ebp - 0x7c], 0
lea ecx, [ebp - 0x7c]
call fcn.004571a0
mov byte [ebp - 4], 0xdf
mov dword [ebp - 0x78], 0
lea ecx, [ebp - 0x78]
call fcn.004571a0
mov byte [ebp - 4], 0xe0
mov dword [ebp - 0xc4], 0
lea ecx, [ebp - 0xc4]
call fcn.004571a0
mov byte [ebp - 4], 0xe1
call fcn.0045ae60
push eax
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x7c]
call fcn.0045ce60
add esp, 4
mov eax, dword [ebp - 0x78]
cmp dword [eax - 0xc], 0
je 0x501dd6
mov eax, dword [ebp - 0x7c]
cmp dword [eax - 0xc], 0
je 0x501dd6
mov eax, dword [ebp - 0xc4]
cmp dword [eax - 0xc], 0
jne 0x501dd6
mov dword [ebp - 0x80], 0
lea ecx, [ebp - 0x80]
call fcn.004571a0
mov byte [ebp - 4], 0xe2
push dword [ebp - 0x7c]
push dword [ebp - 0x78]
push 0x5a1260
lea eax, [ebp - 0x80]
push eax
call fcn.00457480
add esp, 0x10
call fcn.004f5e50
mov ecx, 0x5a10c0
test al, al
jne 0x501cde
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5bc]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xe3
push 0x5928f8
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x8a8]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 0xe4
push esi
mov edx, eax
lea ecx, [ebp - 0x5b4]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xe5
push dword [ebp - 0x488]
push ecx
push 0x78
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [ebp - 0x50]
push ecx
mov edx, eax
lea ecx, [ebp - 0x70]
call fcn.00476340
add esp, 0x14
mov bl, al
mov byte [ebp - 4], 0xe4
lea ecx, [ebp - 0x5b4]
call fcn.00456040
mov byte [ebp - 4], 0xe3
lea ecx, [ebp - 0x8a8]
call fcn.00456040
mov byte [ebp - 4], 0xe2
lea ecx, [ebp - 0x5bc]
jmp 0x501d6d
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x814]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xe6
push 0x5928f8
mov edx, dword [ebp - 0x38]
lea ecx, [ebp - 0x5c4]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 0xe7
push esi
mov edx, eax
lea ecx, [ebp - 0x74c]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xe8
push dword [ebp - 0x488]
push 1
push 2
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [ebp - 0x50]
push ecx
mov edx, eax
lea ecx, [ebp - 0x70]
call fcn.00476df0
add esp, 0x14
mov bl, al
mov byte [ebp - 4], 0xe7
lea ecx, [ebp - 0x74c]
call fcn.00456040
mov byte [ebp - 4], 0xe6
lea ecx, [ebp - 0x5c4]
call fcn.00456040
mov byte [ebp - 4], 0xe2
lea ecx, [ebp - 0x814]
call fcn.00456040
test bl, bl
mov ebx, dword [ebp - 0x4a0]
je 0x501d8b
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebx + 0xa8]
call fcn.0045be70
mov eax, dword [ebx + 0xa8]
cmp dword [eax - 0xc], 0
jne 0x501dc8
mov ecx, 0x5a1270
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5cc]
call fcn.00457210
mov byte [ebp - 4], 0xe9
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0xe2
lea ecx, [ebp - 0x5cc]
call fcn.00456040
mov byte [ebp - 4], 0xe1
lea ecx, [ebp - 0x80]
call fcn.00456040
jmp 0x501e1d
mov ecx, 0x5a12d0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x754]
call fcn.00457210
mov byte [ebp - 4], 0xea
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0xe1
mov edx, dword [ebp - 0x754]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501e1d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xe0
mov edx, dword [ebp - 0xc4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501e42
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xdf
mov edx, dword [ebp - 0x78]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501e64
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xdb
mov edx, dword [ebp - 0x7c]
jmp 0x501e99
mov ecx, 0x5a1320
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5d4]
call fcn.00457210
mov byte [ebp - 4], 0xef
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0xdb
mov edx, dword [ebp - 0x5d4]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501eb4
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xcb
mov edx, dword [ebp - 0x70]
jmp 0x501ee9
mov ecx, 0x5a1370
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x888]
call fcn.00457210
mov byte [ebp - 4], 0xf2
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0xcb
mov edx, dword [ebp - 0x888]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501f04
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xca
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501f26
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0xbc]
jmp 0x502074
lea ecx, [ebp - 0x5dc]
call fcn.0045a130
mov byte [ebp - 4], 0xf6
lea esi, [ebx + 0xa8]
push eax
mov ecx, esi
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x5dc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501f77
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push 0x5c
push dword [esi]
call fcn.0052bd07
add esp, 8
test eax, eax
jne 0x501f8c
or eax, 0xffffffff
jmp 0x501f90
sub eax, dword [esi]
sar eax, 1
inc eax
push eax
lea eax, [ebp - 0x75c]
push eax
mov ecx, esi
call fcn.0045eb20
mov byte [ebp - 4], 0xf8
lea ecx, [ebx + 0xac]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x75c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x501fd5
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [esi]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x484], eax
push 0x5c
push dword [esi]
call fcn.0052bd07
add esp, 8
test eax, eax
jne 0x501ff5
or eax, 0xffffffff
jmp 0x501ff9
sub eax, dword [esi]
sar eax, 1
mov ecx, dword [ebp - 0x484]
sub ecx, eax
dec ecx
push ecx
lea eax, [ebp - 0x5e4]
push eax
mov ecx, esi
call fcn.00479db0
mov byte [ebp - 4], 0xfa
push eax
mov ecx, esi
call fcn.0045be70
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x5e4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502042
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a0ef0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x81c]
call fcn.00457210
mov byte [ebp - 4], 0xfc
push 0x5911c0
push dword [eax]
mov ecx, esi
call fcn.0045b800
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x81c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50208f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a13d4
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5f4]
call fcn.00457210
mov edi, eax
mov byte [ebp - 4], 0xfe
mov ecx, 0x5a13e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x764]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xff
mov ecx, 0x5a1410
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5ec]
call fcn.00457210
mov dword [ebp - 4], 0x100
push 0
push edi
push esi
mov edx, eax
mov ecx, 0x80000001
call fcn.00457fd0
add esp, 0xc
mov dword [ebp - 4], 0xff
mov edx, dword [ebp - 0x5ec]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
or edi, 0xffffffff
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502122
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xfe
mov edx, dword [ebp - 0x764]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50214a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x5f4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502172
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x59fa20
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x838]
call fcn.00457210
mov dword [ebp - 4], 0x104
mov ecx, dword [eax]
test ecx, ecx
jne 0x50219a
or eax, 0xffffffff
jmp 0x5021c0
mov eax, dword [ebx + 0x60]
cmp dword [eax - 0xc], 0
jge 0x5021a8
or eax, 0xffffffff
jmp 0x5021c0
push ecx
push eax
call fcn.0052b75b
add esp, 8
test eax, eax
jne 0x5021bb
or eax, 0xffffffff
jmp 0x5021c0
sub eax, dword [ebx + 0x60]
sar eax, 1
cmp eax, 0xffffffff
sete byte [ebp - 0x47f]
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x838]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5021f2
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47f], 0
je 0x502231
mov ecx, 0x5a1450
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5fc]
call fcn.00457210
mov dword [ebp - 4], 0x106
push eax
push 0x64
mov ecx, ebx
call fcn.00513840
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x5fc]
jmp 0x502265
mov ecx, 0x5a1490
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x76c]
call fcn.00457210
mov dword [ebp - 4], 0x108
push eax
push 0x64
mov ecx, ebx
call fcn.00513840
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x76c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502280
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
cmp byte [ebp - 0x47e], 0
jne 0x50238e
mov ecx, 0x5a14d0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x604]
call fcn.00457210
mov dword [ebp - 4], 0x10a
push eax
push 0xc8
mov ecx, ebx
call fcn.00513840
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x604]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5022df
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1520
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x824]
call fcn.00457210
mov dword [ebp - 4], 0x10c
push dword [ebp - 0x24]
push dword [ebx + 0x90]
push dword [eax]
push dword [ebp - 0x488]
call fcn.00457480
add esp, 0x10
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x824]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50233d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xe
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502362
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], edi
dec edi
test edi, edi
jg 0x505fa0
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x505fa0
cmp byte [ebp - 0x489], 0
je 0x502407
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push 0x5911c0
call fcn.00457210
mov dword [ebp - 4], pe_nt_image_headers32
mov ecx, 0x5a1580
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x60c]
call fcn.00457210
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebx + 0x70]
push eax
lea eax, [ebx + 0x6c]
push eax
mov byte [ebp - 4], 0x12
mov ecx, ebx
call fcn.0050d720
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x60c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502407
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
xor esi, esi
mov dword [ebp - 0x484], esi
cmp dword [ebp - 0x20], esi
jle 0x5028f0
mov eax, dword [ebp - 0x4a8]
mov edx, dword [ebp - 0x44]
sub edx, eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x6c], 0
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push dword [edx + eax]
call fcn.00457210
mov dword [ebp - 4], 0x114
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov dword [ebp - 4], 0x115
mov dword [ebp - 0x64], 0
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
mov eax, dword [ebp - 0x4a8]
push dword [eax]
call fcn.00457210
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x15
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x17
call fcn.00456bd0
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
test eax, eax
je 0x4ffdf9
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x19
call fcn.00456bd0
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
test eax, eax
je 0x4ffdf9
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x1b
cmp byte [ebx + 0xc8], 0
je 0x50252a
mov ecx, 0x5a0fb0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x774]
call fcn.00457210
mov byte [ebp - 4], 0x1c
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x774]
jmp 0x5025ae
cmp byte [ebx + 0xc9], 0
je 0x50256d
mov ecx, 0x5a0fd0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x614]
call fcn.00457210
mov byte [ebp - 4], 0x1e
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x614]
jmp 0x5025ae
cmp byte [ebx + 0xca], 0
je 0x5025c9
mov ecx, 0x5a0ff0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x83c]
call fcn.00457210
mov byte [ebp - 4], 0x20
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x83c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5025c9
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x38]
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x61c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x22
push eax
lea ecx, [ebp - 0x1c]
call fcn.0045be70
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x61c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502610
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax - 0xc], 0
je 0x502625
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x6c]
call fcn.0045be70
cmp byte [ebx + 0xc8], 0
je 0x50266b
mov ecx, 0x5a15b0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x77c]
call fcn.00457210
mov byte [ebp - 4], 0x24
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x77c]
jmp 0x5026ef
cmp byte [ebx + 0xc9], 0
je 0x5026ae
mov ecx, 0x5a15e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x624]
call fcn.00457210
mov byte [ebp - 4], 0x26
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x624]
jmp 0x5026ef
cmp byte [ebx + 0xca], 0
je 0x50270a
mov ecx, 0x5a1610
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x82c]
call fcn.00457210
mov byte [ebp - 4], 0x28
push esi
push dword [eax]
push str._s_i
lea eax, [ebp - 0x38]
push eax
call fcn.00457480
add esp, 0x10
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x82c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50270a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x38]
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x62c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [ebp - 0x1c]
call fcn.0045be70
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x62c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502751
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x1c]
cmp dword [esi - 0xc], 0
je 0x502766
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x64]
call fcn.0045be70
mov eax, dword [ebp - 0x6c]
cmp dword [eax - 0xc], 0
jl 0x500b87
cmp word [eax], 0x5f
je 0x5027d3
mov ecx, 0x5a1640
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x784]
call fcn.00457210
mov byte [ebp - 4], 0x2c
push 0x59fb2c
push dword [eax]
lea ecx, [ebp - 0x6c]
call fcn.0045b800
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x784]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5027c7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebx + 4]
call fcn.0045bd60
mov eax, dword [ebp - 0x64]
cmp dword [eax - 0xc], 0
jl 0x500b87
cmp word [eax], 0x5f
je 0x502840
mov ecx, 0x5a1640
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x634]
call fcn.00457210
mov byte [ebp - 4], 0x2e
push 0x59fb2c
push dword [eax]
lea ecx, [ebp - 0x64]
call fcn.0045b800
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x634]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502834
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebx + 0x10]
call fcn.0045bd60
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502862
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x17
add esi, 0xfffffff0
lea eax, [esi + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502881
mov ecx, dword [esi]
mov eax, dword [ecx]
push esi
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x64]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5028a3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x6c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5028c8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x484]
inc esi
mov dword [ebp - 0x484], esi
mov eax, dword [ebp - 0x4a8]
add eax, 4
mov dword [ebp - 0x4a8], eax
cmp esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x44]
jl 0x502426
mov ecx, dword [ebx + 0x14]
sub ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 8]
sub eax, dword [ebx + 4]
xor ecx, eax
test ecx, 0xfffffffc
je 0x50291b
push ecx
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
call fcn.0045c530
add esp, 4
mov eax, dword [ebx + 0x10]
mov dword [ebx + 0x14], eax
mov eax, dword [ebx + 4]
cmp eax, dword [ebx + 8]
jne 0x50299e
mov ecx, 0x5a1660
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x844]
call fcn.00457210
mov dword [ebp - 4], 0x134
push eax
mov ecx, dword [ebp - 0x488]
call fcn.0045be70
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x844]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502974
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xe
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502999
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x502362
mov eax, dword [ebx + 0x10]
cmp eax, dword [ebx + 0x14]
jne 0x5029df
mov ecx, 0x5a16b0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4c4]
call fcn.00457210
mov dword [ebp - 4], 0x138
push eax
push 0xc8
mov ecx, ebx
call fcn.00513840
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x4c4]
jmp 0x502a16
mov ecx, 0x5a1700
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x78c]
call fcn.00457210
mov dword [ebp - 4], 0x13a
push eax
push 0xc8
mov ecx, ebx
call fcn.00513840
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x78c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502a31
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 0xe8], 0
mov ecx, dword [ebx + 0x14]
sub ecx, dword [ebx + 0x10]
sar ecx, 2
mov eax, dword [ebx + 8]
sub eax, dword [ebx + 4]
sar eax, 2
add ecx, eax
lea eax, [ecx*2 + 0xa]
mov dword [ebp - 0xe8], eax
push 4
lea eax, [ebp - 0xe8]
push eax
push 0x49
push 0
call dword [sym.imp.WININET.dll_InternetSetOptionW]
mov ecx, 0x5a1750
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x834]
call fcn.00457210
mov dword [ebp - 4], 0x13c
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x644]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [ebx + 0x3c]
call fcn.0045be70
mov byte [ebp - 4], 0x3c
mov edx, dword [ebp - 0x644]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502ad0
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x834]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502af8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0x3c]
cmp dword [eax - 0xc], 0
jne 0x502b6a
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5a1770
call fcn.00457210
mov dword [ebp - 4], 0x140
lea eax, [ebp - 0x64c]
push eax
mov dword [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov dword [ebp - 4], 0x141
push eax
lea ecx, [ebx + 0x3c]
call fcn.0045be70
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x64c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502b6a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1a00
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x654]
call fcn.00457210
mov dword [ebp - 4], 0x143
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x794]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x44
push eax
lea ecx, [ebx + 0x40]
call fcn.0045be70
mov byte [ebp - 4], 0x43
mov edx, dword [ebp - 0x794]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502bcb
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x654]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502bf3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0x40]
cmp dword [eax - 0xc], 0
jne 0x502c65
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.uaZF3ev9Hsei_EPKs7ZewKKgR4OyvVyCsqBe3qKwQ8KmoVSCu6Ee1qqxUMChjVjJrK8e1qq1VMKsrx7WqqFUzqO3RdCs_VLF_7hC
call fcn.00457210
mov dword [ebp - 4], 0x147
lea eax, [ebp - 0x84c]
push eax
mov dword [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov dword [ebp - 4], 0x148
push eax
lea ecx, [ebx + 0x40]
call fcn.0045be70
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x84c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502c65
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1cd0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x79c]
call fcn.00457210
mov dword [ebp - 4], 0x14a
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x65c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [ebx + 0x44]
call fcn.0045be70
mov byte [ebp - 4], 0x4a
mov edx, dword [ebp - 0x65c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502cc6
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x79c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502cee
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0x44]
cmp dword [eax - 0xc], 0
jne 0x502d60
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5a1cf0
call fcn.00457210
mov dword [ebp - 4], 0x14e
lea eax, [ebp - 0x664]
push eax
mov dword [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov dword [ebp - 4], 0x14f
push eax
lea ecx, [ebx + 0x44]
call fcn.0045be70
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x664]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502d60
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a1f80
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x66c]
call fcn.00457210
mov dword [ebp - 4], 0x151
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x854]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x52
push eax
lea ecx, [ebx + 0x48]
call fcn.0045be70
mov byte [ebp - 4], 0x51
mov edx, dword [ebp - 0x854]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502dc1
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x66c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502de9
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 0x48]
cmp dword [eax - 0xc], 0
jne 0x502e5b
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.uaZF3ev9Ht6jsVmDo7VTyb6_Qtn_FLCvP1S376hQsjvUbetP1Czrn9Stays1zdjrtV0Kz9Sta2t17QrP1K1qK3Ut0pkzQ_rFZg7uhXsM
call fcn.00457210
mov dword [ebp - 4], 0x155
lea eax, [ebp - 0x7a4]
push eax
mov dword [ebp - 4], 0x8d
mov ecx, ebx
call fcn.004fc4b0
mov dword [ebp - 4], 0x156
push eax
lea ecx, [ebx + 0x48]
call fcn.0045be70
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x7a4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502e5b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 0x28], 0
push ecx
mov dword [ebp - 0x490], esp
mov esi, esp
mov dword [ebp - 0x484], esi
mov ecx, dword [ebx + 0xb8]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [esi], eax
mov dword [ebp - 4], 0x159
mov dword [ebp - 4], 0x8d
lea ecx, [ebp - 0x28]
call fcn.004ff4f0
add esp, 4
mov dword [ebp - 4], 0x15a
push dword [ebp - 0x28]
push str.geo
lea ecx, [ebx + 0x3c]
call fcn.0045b800
push dword [ebp - 0x28]
push str.geo
lea ecx, [ebx + 0x40]
call fcn.0045b800
push dword [ebp - 0x28]
push str.geo
lea ecx, [ebx + 0x44]
call fcn.0045b800
push dword [ebp - 0x28]
push str.geo
lea ecx, [ebx + 0x48]
call fcn.0045b800
mov ecx, 0x5a2260
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x674]
call fcn.00457210
mov byte [ebp - 4], 0x5b
push dword [ebp - 0x28]
push dword [eax]
lea ecx, [ebx + 0x3c]
call fcn.0045b800
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x674]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502f30
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a2260
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x840]
call fcn.00457210
mov byte [ebp - 4], 0x5d
push dword [ebp - 0x28]
push dword [eax]
lea ecx, [ebx + 0x40]
call fcn.0045b800
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x840]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502f7c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a2260
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x67c]
call fcn.00457210
mov byte [ebp - 4], 0x5f
push dword [ebp - 0x28]
push dword [eax]
lea ecx, [ebx + 0x44]
call fcn.0045b800
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x67c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x502fc8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a2260
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7ac]
call fcn.00457210
mov byte [ebp - 4], 0x61
push dword [ebp - 0x28]
push dword [eax]
lea ecx, [ebx + 0x48]
call fcn.0045b800
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x7ac]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503014
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 0x34], 0
mov ecx, 0x5a2280
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x684]
call fcn.00457210
mov byte [ebp - 4], 0x63
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x34]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x684]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503069
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x34]
cmp dword [eax - 0xc], 0
jne 0x5030cf
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5a22b0
call fcn.00457210
mov byte [ebp - 4], 0x67
lea eax, [ebp - 0x890]
push eax
mov byte [ebp - 4], 0x65
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x68
push eax
lea ecx, [ebp - 0x34]
call fcn.0045be70
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x890]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5030cf
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x68c]
call fcn.00457210
mov byte [ebp - 4], 0x6a
mov ecx, dword [ebp - 0x49c]
or ecx, 2
mov dword [ebp - 0x49c], ecx
lea edx, [ebp - 0x34]
mov ecx, eax
call fcn.0045bca0
test al, al
je 0x503116
cmp byte [ebx + 0xc8], 0
mov byte [ebp - 0x47e], 1
jne 0x50311d
mov byte [ebp - 0x47e], 0
mov dword [ebp - 4], 0x165
mov eax, dword [ebp - 0x49c]
test al, 2
je 0x50315c
and eax, 0xfffffffd
mov dword [ebp - 0x49c], eax
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x68c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50315c
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x488]
cmp byte [ebp - 0x47e], 0
je 0x50319c
push esi
lea eax, [ebx + 0xec]
push eax
lea eax, [ebx + 0xe0]
push eax
mov ecx, ebx
call fcn.00516390
test al, al
jne 0x50319c
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
je 0x50319c
push esi
mov ecx, ebx
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
mov ecx, 0x5a2330
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x694]
call fcn.00457210
mov byte [ebp - 4], 0x6c
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x7b4]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x6d
lea ecx, [ebx + 0x4c]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x6c
mov edx, dword [ebp - 0x7b4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5031fa
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x694]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50321f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a2350
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x848]
call fcn.00457210
mov byte [ebp - 4], 0x70
push eax
push 0xfa
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x848]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50326b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push esi
lea eax, [ebp - 0x69c]
push eax
mov ecx, ebx
call fcn.005099b0
mov byte [ebp - 4], 0x72
lea ecx, [ebx + 0x28]
push eax
call fcn.0045be70
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x69c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5032ac
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea ecx, [ebx + 0x28]
mov eax, dword [ecx]
mov eax, dword [eax - 0xc]
test eax, eax
jne 0x503329
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5032da
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5032ff
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xe
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503324
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x502362
dec eax
js 0x500b87
mov edx, dword [ecx]
cmp eax, dword [edx - 0xc]
jg 0x500b87
cmp word [edx + eax*2], 0x5c
je 0x50334c
push 0x5923e4
call fcn.00460180
mov dword [ebp - 0x30], 0
mov ecx, 0x5a2390
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7bc]
call fcn.00457210
mov byte [ebp - 4], 0x78
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x30]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x7bc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5033a1
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x30]
cmp dword [eax - 0xc], 0
jne 0x503407
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.4A
call fcn.00457210
mov byte [ebp - 4], 0x7c
lea eax, [ebp - 0x6a4]
push eax
mov byte [ebp - 4], 0x7a
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x7d
push eax
lea ecx, [ebp - 0x30]
call fcn.0045be70
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x6a4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503407
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push dword [ebp - 0x30]
call fcn.0052dbd9
add esp, 4
mov ecx, 2
cmp byte [ebp - 0x47d], 0
cmovne eax, ecx
mov dword [ebp - 0x484], eax
cmp byte [ebx + 0xcb], 0
je 0x50352e
mov ecx, 0x5a2410
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6ac]
call fcn.00457210
mov byte [ebp - 4], 0x7f
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x8b0]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x80
push eax
lea ecx, [ebp - 0x30]
call fcn.0045be70
mov byte [ebp - 4], 0x7f
mov edx, dword [ebp - 0x8b0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503492
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x6ac]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5034b7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x30]
cmp dword [eax - 0xc], 0
jne 0x50351d
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.4w
call fcn.00457210
mov byte [ebp - 4], 0x83
lea eax, [ebp - 0x7c4]
push eax
mov byte [ebp - 4], 0x7a
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x84
push eax
lea ecx, [ebp - 0x30]
call fcn.0045be70
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x7c4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50351d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push dword [ebp - 0x30]
call fcn.0052dbd9
add esp, 4
mov dword [ebp - 0x484], eax
push esi
test eax, eax
setne al
movzx eax, al
push eax
mov ecx, ebx
call fcn.0050dfe0
test al, al
jne 0x503630
mov esi, dword [ebx + 0x28]
call fcn.00456ec0
mov edx, esi
mov ecx, eax
call fcn.004712e0
cmp eax, 0xffffffff
je 0x50359d
test al, 0x10
je 0x50359d
mov byte [ebp - 0x489], 1
push ecx
mov dword [ebp - 0x490], esp
mov esi, esp
mov dword [ebp - 0x484], esi
mov ecx, dword [ebx + 0x28]
sub ecx, 0x10
call fcn.00456280
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0x87
mov byte [ebp - 4], 0x7a
mov cl, byte [ebp - 0x489]
call fcn.0045f540
add esp, 4
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5035bf
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5035e1
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0x8d
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503606
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov dword [ebp - 4], 0xe
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x50362b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x502362
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x3c]
call fcn.004571a0
mov byte [ebp - 4], 0x8d
cmp byte [ebx + 0xc8], 0
je 0x503716
mov ecx, 0x59fa60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6bc]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x8e
push 0x5a249c
lea ecx, [ebp - 0x850]
call fcn.00455f90
mov byte [ebp - 4], 0x8f
push esi
mov edx, eax
lea ecx, [ebp - 0x6b4]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x90
push eax
lea ecx, [ebp - 0x3c]
call fcn.0045be70
mov byte [ebp - 4], 0x8f
mov edx, dword [ebp - 0x6b4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5036c3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8e
mov edx, dword [ebp - 0x850]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5036e8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x6bc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503871
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x503871
cmp byte [ebx + 0xc9], 0
je 0x5037e9
mov ecx, 0x5a24a0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x898]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x94
push 0x5a249c
lea ecx, [ebp - 0x6c4]
call fcn.00455f90
mov byte [ebp - 4], 0x95
push esi
mov edx, eax
lea ecx, [ebp - 0x7cc]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x96
push eax
lea ecx, [ebp - 0x3c]
call fcn.0045be70
mov byte [ebp - 4], 0x95
mov edx, dword [ebp - 0x7cc]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503796
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x94
mov edx, dword [ebp - 0x6c4]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5037bb
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x898]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503871
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
jmp 0x503871
cmp byte [ebx + 0xca], 0
je 0x503877
mov ecx, 0x591ab0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4c8]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x9a
push 0x5a249c
lea ecx, [ebp - 0x7d4]
call fcn.00455f90
mov byte [ebp - 4], 0x9b
push esi
mov edx, eax
lea ecx, [ebp - 0x6cc]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x9c
push eax
lea ecx, [ebp - 0x3c]
call fcn.0045be70
mov byte [ebp - 4], 0x9b
lea ecx, [ebp - 0x6cc]
call fcn.00456040
mov byte [ebp - 4], 0x9a
lea ecx, [ebp - 0x7d4]
call fcn.00456040
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x4c8]
call fcn.00456040
mov esi, dword [ebp - 0x488]
test byte [ebp - 0x484], 1
je 0x50392b
push esi
lea edx, [ebx + 0x24]
lea ecx, [ebp - 0x3c]
call fcn.00520820
add esp, 4
mov eax, dword [esi]
cmp dword [eax - 0xc], 0
je 0x5038f8
mov ecx, 0x5a24c0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4d0]
call fcn.00457210
mov byte [ebp - 4], 0x9d
push eax
push 0x186
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x4d0]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5038e7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
push esi
mov ecx, ebx
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
jmp 0x503977
mov ecx, 0x5a2520
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4d8]
call fcn.00457210
mov byte [ebp - 4], 0x9f
push eax
push 0x186
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x4d8]
jmp 0x50395c
mov ecx, 0x5a2580
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4e0]
call fcn.00457210
mov byte [ebp - 4], 0xa1
push eax
push 0x186
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x4e0]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503977
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a25e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4e8]
call fcn.00457210
mov byte [ebp - 4], 0xa3
lea ecx, [ebx + 0x2c]
push dword [ebx + 0x28]
push dword [eax]
call fcn.0045b800
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x4e8]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x5039c3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xa5
lea eax, [ebx + 0x20]
push eax
lea edx, [ebx + 0x28]
lea ecx, [ebp - 0x4f0]
call fcn.0045bbe0
mov byte [ebp - 4], 0xa6
lea ecx, [ebx + 0x2c]
push ecx
push eax
call fcn.0050dee0
mov dword [ebp - 0x484], eax
mov byte [ebp - 4], 0xa5
lea ecx, [ebp - 0x4f0]
call fcn.00456040
cmp dword [ebp - 0x484], 0
je 0x503ad3
mov ecx, 0x5a2600
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x4f8]
call fcn.00457210
mov byte [ebp - 4], 0xa7
push eax
push 0x19a
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0xa5
lea ecx, [ebp - 0x4f8]
call fcn.00456040
mov ecx, 0x5a2660
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x500]
call fcn.00457210
mov byte [ebp - 4], 0xa8
push dword [ebp - 0x484]
push dword [eax]
push esi
call fcn.00457480
add esp, 0xc
mov byte [ebp - 4], 0xa5
lea ecx, [ebp - 0x500]
call fcn.00456040
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0x3c]
call fcn.00456040
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x30]
call fcn.00456040
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x34]
call fcn.00456040
mov dword [ebp - 4], 0x8d
lea ecx, [ebp - 0x28]
call fcn.00456040
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x24]
call fcn.00456040
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00456040
mov dword [ebp - 4], 0xffffffff
jmp 0x505fa0
mov dword [ebp - 4], 0x18d
mov dword [ebp - 0x40], 0
mov ecx, 0x5a0ef0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x510]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xb0
lea ecx, [ebx + 0x5c]
mov dword [ebp - 0x44], ecx
lea eax, [ebx + 0x24]
mov dword [ebp - 0x1c], eax
push ecx
mov edx, eax
lea ecx, [ebp - 0x508]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xb1
push esi
mov edx, eax
lea ecx, [ebp - 0x40]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xb3
mov edx, dword [ebp - 0x508]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503b51
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0xb5
mov edx, dword [ebp - 0x510]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503b76
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
lea ecx, [ebp - 0x40]
call fcn.0045f700
test al, al
jne 0x503ca6
mov ecx, 0x5a27f0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x518]
call fcn.00457210
mov byte [ebp - 4], 0xb7
push eax
push 0x19a
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0xb5
mov edx, dword [ebp - 0x518]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503bd2
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov ecx, 0x5a2860
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x520]
call fcn.00457210
mov byte [ebp - 4], 0xb9
push eax
mov ecx, dword [ebp - 0x488]
call fcn.0045be70
mov byte [ebp - 4], 0xb5
mov edx, dword [ebp - 0x520]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503c1d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x8d
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x503c3f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lea eax, [edx + 0xc]
lock xadd dword [eax], edi
dec edi
test edi, edi
jg 0x503c5f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x30]
call fcn.00456040
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x34]
call fcn.00456040
mov dword [ebp - 4], 0x8d
lea ecx, [ebp - 0x28]
call fcn.00456040
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x24]
call fcn.00456040
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00456040
jmp 0x505fa0
mov dword [ebp - 0x484], 0
lea ecx, [ebp - 0x40]
call fcn.0045b5e0
lea edx, [ebp - 0x484]
mov ecx, eax
call fcn.0045f840
test eax, eax
je 0x505e00
cmp dword [ebp - 0x484], 0x7d000
jb 0x505e00
mov ecx, 0x5a2990
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x528]
call fcn.00457210
mov byte [ebp - 4], 0xbf
push eax
push 0x19a
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0x528]
call fcn.00456040
add ebx, 0xa8
mov ecx, ebx
call fcn.0045b610
test al, al
jne 0x503d66
call fcn.004f5ed0
test al, al
je 0x503d5f
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push ebx
call fcn.00455f30
mov byte [ebp - 4], 0xc0
mov byte [ebp - 4], 0xb5
mov ecx, dword [ebp - 0x488]
call fcn.00476840
add esp, 4
mov ecx, dword [ebp - 0x488]
call fcn.00456d00
jmp 0x503d66
mov ecx, ebx
call fcn.00477cf0
push ecx
lea ecx, [ebp - 0xb8]
call fcn.00455e90
lea ecx, [ebp - 0xb8]
call fcn.0045a130
mov byte [ebp - 4], 0xc1
mov ecx, 0x5a29e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x540]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xc2
push 0x5923e4
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x538]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 0xc3
push esi
mov edx, eax
lea ecx, [ebp - 0x530]
call fcn.0045bbe0
mov byte [ebp - 4], 0xc4
mov ecx, eax
call fcn.0045b5e0
push eax
lea ecx, [ebp - 0xb8]
call fcn.0045b5e0
mov esi, eax
call fcn.00456ec0
mov edx, esi
mov ecx, eax
call fcn.00471bb0
test eax, eax
sete bl
mov byte [ebp - 4], 0xc3
lea ecx, [ebp - 0x530]
call fcn.00456040
mov byte [ebp - 4], 0xc2
lea ecx, [ebp - 0x538]
call fcn.00456040
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x540]
call fcn.00456040
test bl, bl
je 0x503ebc
mov ecx, 0x5a2a00
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x548]
call fcn.00457210
mov byte [ebp - 4], 0xc5
push eax
push 0x1a4
mov edi, dword [ebp - 0x4a0]
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x548]
call fcn.00456040
mov ecx, 0x5a2a50
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x550]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xc6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.0045b5e0
push eax
mov ebx, dword [ebp - 0x488]
push ebx
call fcn.00457480
add esp, 0xc
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x550]
call fcn.00456040
push ebx
mov ecx, edi
call fcn.00511fe0
mov ecx, ebx
call fcn.00456d00
jmp 0x503ef8
mov ecx, 0x5a2a80
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x558]
call fcn.00457210
mov byte [ebp - 4], 0xc7
push eax
push 0x1a4
mov edi, dword [ebp - 0x4a0]
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x558]
call fcn.00456040
push ecx
lea ecx, [ebp - 0x88]
call fcn.00455e90
mov ecx, 0x5a2ad0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x560]
call fcn.00457210
mov byte [ebp - 4], 0xc8
push eax
lea edx, [edi + 0x60]
lea ecx, [ebp - 0x88]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x560]
call fcn.00456040
lea ecx, [ebp - 0x88]
call fcn.0045b610
test al, al
je 0x503f5e
push 0x5a2b08
lea ecx, [ebp - 0x88]
call fcn.00457370
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x568]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xcb
lea ecx, [ebp - 0x88]
call fcn.0045ba80
mov edx, esi
mov ecx, eax
call fcn.0045bca0
mov bl, al
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x568]
call fcn.00456040
test bl, bl
je 0x504043
mov esi, dword [ebp - 0x488]
push esi
mov ecx, edi
call fcn.00512ec0
test al, al
jne 0x50400b
mov ecx, esi
call fcn.0045b610
test al, al
jne 0x503fd3
push esi
mov ecx, edi
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
mov ecx, 0x5a2b80
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x570]
call fcn.00457210
mov byte [ebp - 4], 0xcc
push eax
push 0x1ae
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x570]
call fcn.00456040
jmp 0x50407f
mov ecx, 0x5a2be0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x578]
call fcn.00457210
mov byte [ebp - 4], 0xcd
push eax
push 0x1ae
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x578]
call fcn.00456040
jmp 0x50407f
mov ecx, 0x5a2c40
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x580]
call fcn.00457210
mov byte [ebp - 4], 0xce
push eax
push 0x1ae
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x580]
call fcn.00456040
mov esi, dword [ebp - 0x488]
mov ecx, 0x5a2c90
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x590]
call fcn.00457210
mov byte [ebp - 4], 0xcf
push eax
lea edx, [edi + 0x28]
lea ecx, [ebp - 0x588]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xd0
mov ecx, eax
call fcn.0045f6d0
mov bl, al
mov byte [ebp - 4], 0xcf
lea ecx, [ebp - 0x588]
call fcn.00456040
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x590]
call fcn.00456040
test bl, bl
je 0x50479e
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
lea eax, [edi + 0x24]
push eax
call fcn.00455f30
mov byte [ebp - 4], 0xd1
mov ecx, 0x5a2c90
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x598]
call fcn.00457210
mov byte [ebp - 4], 0xd2
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
push eax
lea edx, [edi + 0x28]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xd3
mov byte [ebp - 4], 0xd4
call fcn.0045fde0
add esp, 8
mov bl, al
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x598]
call fcn.00456040
test bl, bl
je 0x50476b
push ecx
lea ecx, [ebp - 0xa0]
call fcn.00455e90
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5a2ca8
call fcn.00457210
mov byte [ebp - 4], 0xd5
lea eax, [ebp - 0xa0]
push eax
mov byte [ebp - 4], 0xca
mov ecx, edi
call fcn.004fc4b0
mov byte [ebp - 4], 0xd6
lea ebx, [edi + 0xe0]
mov ecx, ebx
call fcn.0051b560
test al, al
jne 0x50449b
push 0x4e20
push 1
push 0
mov ecx, ebx
call fcn.0051b570
push eax
mov ecx, ebx
call fcn.0051b550
push eax
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x484], eax
mov ecx, ebx
call fcn.0051b550
cmp dword [ebp - 0x484], eax
ja 0x5043e7
push ecx
lea ecx, [ebp - 0xe4]
call fcn.004faf00
lea ecx, [ebp - 0xe4]
call fcn.0051b9c0
mov byte [ebp - 4], 0xd7
xor esi, esi
mov ecx, ebx
call fcn.0051b550
test eax, eax
je 0x5043af
lea eax, [edi + 0xec]
push esi
mov ecx, eax
call fcn.0051b570
push str.error
mov ecx, dword [eax]
call fcn.00469c10
test al, al
je 0x504357
xor bl, bl
push ecx
lea ecx, [ebp - 0x9c]
call fcn.0045b520
push esi
lea ecx, [edi + 0xec]
call fcn.0051b570
push str.error
mov ecx, dword [eax]
call fcn.004698a0
push eax
lea ecx, [ebp - 0x9c]
call fcn.00468e30
mov byte [ebp - 4], 0xd8
lea ecx, [ebp - 0x9c]
call fcn.00469e20
test al, al
je 0x504342
call fcn.00469530
test eax, eax
je 0x504342
jmp 0x504280
push ecx
lea ecx, [ebp - 0xac]
call fcn.00455e90
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x490], esp
push eax
push ecx
push esi
lea ecx, [ebp - 0x9c]
call fcn.004695e0
add esp, 4
mov ecx, eax
call fcn.00469150
mov byte [ebp - 4], 0xd9
mov byte [ebp - 4], 0xd8
lea ecx, [ebp - 0xac]
call fcn.00456f70
add esp, 0x18
mov byte [ebp - 4], 0xda
lea ecx, [ebp - 0xac]
call fcn.0045b610
test al, al
jne 0x5042e8
lea eax, [ebp - 0xac]
push eax
mov ecx, edi
call fcn.00511fe0
jmp 0x5042ea
mov bl, 1
mov byte [ebp - 4], 0xd8
lea ecx, [ebp - 0xac]
call fcn.00456040
inc esi
lea ecx, [ebp - 0x9c]
call fcn.00469530
test eax, eax
jne 0x504280
test bl, bl
je 0x504342
mov ecx, 0x5a2d20
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5a0]
call fcn.00457210
mov byte [ebp - 4], 0xdb
push eax
mov ecx, edi
call fcn.00511fe0
mov byte [ebp - 4], 0xd8
lea ecx, [ebp - 0x5a0]
call fcn.00456040
mov byte [ebp - 4], 0xd7
lea ecx, [ebp - 0x9c]
call fcn.00468f90
lea ebx, [edi + 0xe0]
push esi
mov ecx, ebx
call fcn.0051b570
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea ecx, [edi + 0xec]
call fcn.0051b570
lea ecx, [ebp - 0xe4]
push ecx
push dword [eax]
call fcn.00516e50
push esi
lea ecx, [edi + 0xec]
call fcn.0051b570
mov ecx, dword [eax]
test ecx, ecx
je 0x504399
push ecx
call fcn.00506090
inc esi
mov ecx, ebx
call fcn.0051b550
cmp esi, eax
lea eax, [edi + 0xec]
jb 0x504206
lea ecx, [ebp - 0xe4]
call fcn.0051ba80
test al, al
jne 0x5043d3
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0xe4]
push eax
mov ecx, edi
call fcn.00516ff0
mov byte [ebp - 4], 0xd6
lea ecx, [ebp - 0xe4]
call fcn.0051ba20
jmp 0x504489
mov ecx, 0x5a2d60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5a8]
call fcn.00457210
mov byte [ebp - 4], 0xdc
push dword [ebp - 0x484]
mov ecx, eax
call fcn.0045b5e0
push eax
push esi
call fcn.00457480
add esp, 0xc
mov byte [ebp - 4], 0xd6
lea ecx, [ebp - 0x5a8]
call fcn.00456040
push esi
mov ecx, edi
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
xor esi, esi
mov ecx, ebx
call fcn.0051b550
test eax, eax
je 0x504489
push esi
mov ecx, ebx
call fcn.0051b570
push 0
push dword [eax]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push esi
mov ecx, ebx
call fcn.0051b570
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea ecx, [edi + 0xec]
call fcn.0051b570
mov ecx, dword [eax]
test ecx, ecx
je 0x50447d
push ecx
call fcn.00506090
inc esi
mov ecx, ebx
call fcn.0051b550
cmp esi, eax
jb 0x504443
lea ecx, [edi + 0xec]
call fcn.0051b580
mov ecx, ebx
call fcn.0051b580
push ecx
lea ecx, [ebp - 0x98]
call fcn.0045a610
lea ecx, [ebp - 0x98]
call fcn.0045bd40
mov byte [ebp - 4], 0xdd
mov esi, dword [ebp - 0x488]
push esi
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x98]
push eax
mov ecx, edi
call fcn.005105f0
test al, al
jne 0x5044fb
mov ecx, esi
call fcn.0045b610
test al, al
jne 0x5044f0
push esi
mov ecx, edi
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
lea ecx, [ebp - 0x98]
call fcn.0051be30
xor ebx, ebx
lea ecx, [ebp - 0x98]
call fcn.0051bdf0
mov dword [ebp - 0x20], eax
test eax, eax
je 0x50471a
mov ecx, esi
call fcn.00456d00
lea ecx, [ebp - 0x87c]
call fcn.004f9130
mov byte [ebp - 4], 0xde
mov dword [ebp - 0x874], 0
push 0x5923e4
lea ecx, [ebp - 0x5d0]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xdf
mov ecx, 0x5a2c90
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5c8]
call fcn.00457210
mov byte [ebp - 4], 0xe0
push eax
lea edx, [edi + 0x24]
lea ecx, [ebp - 0x5c0]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xe1
push esi
mov edx, eax
lea ecx, [ebp - 0x5b8]
call fcn.0045bbe0
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0xe2
push ebx
lea ecx, [ebp - 0x98]
call fcn.0051be10
mov dword [ebp - 0x484], eax
add eax, 8
push eax
mov edx, esi
lea ecx, [ebp - 0x5b0]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xe3
push eax
lea ecx, [ebp - 0x878]
call fcn.0045b7c0
mov byte [ebp - 4], 0xe2
lea ecx, [ebp - 0x5b0]
call fcn.00456040
mov byte [ebp - 4], 0xe1
lea ecx, [ebp - 0x5b8]
call fcn.00456040
mov byte [ebp - 4], 0xe0
lea ecx, [ebp - 0x5c0]
call fcn.00456040
mov byte [ebp - 4], 0xdf
lea ecx, [ebp - 0x5c8]
call fcn.00456040
mov byte [ebp - 4], 0xde
lea ecx, [ebp - 0x5d0]
call fcn.00456040
lea ecx, [ebp - 0x878]
call fcn.0045f700
test al, al
je 0x5046fb
lea ecx, [ebp - 0x86c]
call fcn.00506160
mov byte [ebp - 4], 0xe4
lea eax, [edi + 0x84]
push eax
lea ecx, [ebp - 0x86c]
call fcn.0045b7c0
lea eax, [edi + 0x80]
push eax
lea ecx, [ebp - 0x868]
call fcn.0045b7c0
lea eax, [edi + 0x88]
push eax
lea ecx, [ebp - 0x864]
call fcn.0045b7c0
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00455e90
mov esi, dword [ebp - 0x488]
push esi
lea eax, [ebp - 0x86c]
push eax
push ecx
mov ecx, dword [ebp - 0x484]
lea eax, [ecx + 4]
push eax
lea eax, [ecx + 0x10]
push eax
lea eax, [ebp - 0x87c]
push eax
lea eax, [ecx + 0xc]
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0xb4]
call fcn.00478420
add esp, 0x1c
mov byte [ebp - 4], 0xe5
lea ecx, [ebp - 0xb4]
call fcn.0045b610
test al, al
je 0x5046db
mov ecx, esi
call fcn.0045b610
test al, al
jne 0x5046db
push esi
mov ecx, edi
call fcn.00511fe0
mov ecx, esi
call fcn.00456d00
mov byte [ebp - 4], 0xe4
lea ecx, [ebp - 0xb4]
call fcn.00456040
mov byte [ebp - 4], 0xde
lea ecx, [ebp - 0x86c]
call fcn.00506240
jmp 0x504701
mov esi, dword [ebp - 0x488]
mov byte [ebp - 4], 0xdd
lea ecx, [ebp - 0x87c]
call fcn.005060f0
inc ebx
cmp ebx, dword [ebp - 0x20]
jb 0x504513
mov ecx, 0x5a2da0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5d8]
call fcn.00457210
mov byte [ebp - 4], 0xe6
push eax
push 0x1b8
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xdd
lea ecx, [ebp - 0x5d8]
call fcn.00456040
mov byte [ebp - 4], 0xd6
lea ecx, [ebp - 0x98]
call fcn.0051bc80
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0xa0]
jmp 0x5047cf
mov ecx, 0x5a2df0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5e0]
call fcn.00457210
mov byte [ebp - 4], 0xe7
push eax
push 0x1b8
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x5e0]
jmp 0x5047cf
mov ecx, 0x5a2e60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x5e8]
call fcn.00457210
mov byte [ebp - 4], 0xe8
push eax
push 0x1b8
mov ecx, edi
call fcn.00513840
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x5e8]
call fcn.00456040
mov ebx, dword [ebp - 0x488]
mov ecx, ebx
call fcn.00456d00
push ecx
lea ecx, [ebp - 0x60]
call fcn.00455e90
lea ecx, [ebp - 0x60]
call fcn.004571a0
mov byte [ebp - 4], 0xe9
push dword [edi + 0xc0]
push dword [edi + 0xc4]
push 0x5a1260
lea eax, [ebp - 0x60]
push eax
call fcn.00457480
add esp, 0x10
mov edx, 0x5923e4
lea ecx, [ebp - 0x60]
call fcn.0045bcf0
test al, al
je 0x50482c
lea ecx, [ebp - 0x60]
call fcn.00456d00
mov byte [ebp - 4], 0xea
lea eax, [ebp - 0x608]
push eax
mov ecx, edi
call fcn.0050cdb0
mov edi, eax
mov byte [ebp - 4], 0xeb
mov ecx, 0x5a29e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x600]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0xec
push 0x5923e4
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x5f8]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 0xed
push esi
mov edx, eax
lea ecx, [ebp - 0x5f0]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0xee
push ebx
push ecx
push 0x168
lea ecx, [ebp - 0x60]
push ecx
push dword [ebp - 0x44]
mov edx, edi
mov ecx, eax
call fcn.00476340
add esp, 0x14
test al, al
sete bl
mov byte [ebp - 4], 0xed
lea ecx, [ebp - 0x5f0]
call fcn.00456040
mov byte [ebp - 4], 0xec
lea ecx, [ebp - 0x5f8]
call fcn.00456040
mov byte [ebp - 4], 0xeb
lea ecx, [ebp - 0x600]
call fcn.00456040
mov byte [ebp - 4], 0xea
lea ecx, [ebp - 0x608]
call fcn.00456040
test bl, bl
je 0x50495c
mov ebx, dword [ebp - 0x488]
mov ecx, ebx
call fcn.0045b610
mov esi, dword [ebp - 0x4a0]
test al, al
jne 0x504914
push ebx
mov ecx, esi
call fcn.00511fe0
mov ecx, ebx
call fcn.00456d00
mov ecx, 0x5a2eb0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x610]
call fcn.00457210
mov byte [ebp - 4], 0xef
push eax
push 0x1c2
mov ecx, esi
call fcn.00513840
mov byte [ebp - 4], 0xea
lea ecx, [ebp - 0x610]
call fcn.00456040
mov dword [ebp - 4], 0x1e9
mov ebx, dword [ebp - 0x4a0]
jmp 0x504a8e
mov ecx, 0x5a2ef0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x618]
call fcn.00457210
mov byte [ebp - 4], 0xf0
push eax
push 0x1c2
mov ecx, dword [ebp - 0x4a0]
call fcn.00513840
mov byte [ebp - 4], 0xea
lea ecx, [ebp - 0x618]
call fcn.00456040
mov dword [ebp - 4], 0x1e9
mov ebx, dword [ebp - 0x4a0]
jmp 0x504a8e
mov edi, dword [ebp - 0x488]
push ecx
lea ecx, [ebp - 0x74]
call fcn.00455e90
mov ecx, 0x5a3040
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x658]
call fcn.00457210
mov byte [ebp - 4], 0xf9
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x74]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0xfb
lea ecx, [ebp - 0x658]
call fcn.00456040
lea ecx, [ebp - 0x74]
call fcn.0045b610
test al, al
je 0x504b28
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.qLdC
call fcn.00457210
mov byte [ebp - 4], 0xfc
lea eax, [ebp - 0x660]
push eax
mov byte [ebp - 4], 0xfb
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0xfd
push eax
lea ecx, [ebp - 0x74]
call fcn.0045b7c0
mov byte [ebp - 4], 0xfb
lea ecx, [ebp - 0x660]
call fcn.00456040
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x668]
call fcn.00457210
mov byte [ebp - 4], 0xfe
mov ecx, dword [ebp - 0x49c]
or ecx, 4
mov dword [ebp - 0x49c], ecx
lea edx, [ebp - 0x74]
mov ecx, eax
call fcn.0045bca0
test al, al
je 0x504b6f
cmp byte [ebx + 0xcb], 0
mov byte [ebp - 0x47d], 1
je 0x504b76
mov byte [ebp - 0x47d], 0
mov dword [ebp - 4], 0x1fb
mov eax, dword [ebp - 0x49c]
test al, 4
je 0x504b9b
and eax, 0xfffffffb
mov dword [ebp - 0x49c], eax
lea ecx, [ebp - 0x668]
call fcn.00456040
cmp byte [ebp - 0x47d], 0
je 0x504bab
mov byte [ebx + 0xcf], 1
push ecx
lea ecx, [ebp - 0xf4]
call fcn.0045a610
lea ecx, [ebp - 0xf4]
call fcn.0045bd40
mov byte [ebp - 4], 0xff
push ecx
lea ecx, [ebp - 0xcc]
call fcn.00455e90
lea ecx, [ebp - 0xcc]
call fcn.0045ef80
mov dword [ebp - 4], 0x200
push ecx
lea ecx, [ebp - 0x48]
call fcn.004faf00
push ecx
lea ecx, [ebp - 0x48]
call fcn.0051be60
mov byte [ebp - 4], 1
cmp byte [ebx + 0xc8], 0
je 0x504d55
lea ecx, [ebx + 0x24]
call fcn.0051ae20
mov dword [ebp - 0x484], eax
lea esi, [ebx + 0x5c]
push esi
mov edx, 0x5923e4
lea ecx, [ebp - 0x680]
call fcn.00479e80
add esp, 4
mov byte [ebp - 4], 2
push 0x5923e4
mov edx, eax
lea ecx, [ebp - 0x678]
call fcn.0045ebe0
add esp, 4
mov byte [ebp - 4], 3
push esi
mov edx, eax
lea ecx, [ebp - 0x670]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 4
mov ecx, eax
call fcn.0051ae20
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0xcc]
call fcn.0051ae20
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x484]
push eax
lea eax, [ebp - 0x1c]
push eax
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x8e4]
call fcn.0051e680
add esp, 8
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x48]
call fcn.0051be80
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x8e4]
call fcn.0051bf30
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x670]
call fcn.00456040
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x678]
call fcn.00456040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x680]
call fcn.00456040
jmp 0x504d7c
lea ecx, [ebp - 0x8dc]
call fcn.0051e760
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x48]
call fcn.0051be80
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x8dc]
call fcn.0051bf30
cmp byte [ebx + 0xc8], 0
je 0x504f85
mov byte [ebp - 4], 7
lea eax, [ebp - 0xf4]
push eax
push edi
movzx eax, byte [ebx + 0xcf]
push eax
lea ecx, [ebp - 0x48]
call fcn.0045b5e0
mov ecx, eax
call fcn.00525230
test al, al
jne 0x504e5d
mov ecx, edi
call fcn.0045b610
test al, al
jne 0x504e1b
mov ecx, 0x5a30e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x690]
call fcn.00457210
mov byte [ebp - 4], 8
push edi
mov edx, eax
lea ecx, [ebp - 0x688]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 9
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x688]
call fcn.00456040
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x690]
call fcn.00456040
mov ecx, edi
call fcn.00456d00
mov ecx, 0x5a3110
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x698]
call fcn.00457210
mov byte [ebp - 4], 0xa
push eax
push 0x1d6
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x698]
call fcn.00456040
mov dword [ebp - 4], 0x201
jmp 0x504f85
mov ecx, 0x5a3160
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6a0]
call fcn.00457210
mov byte [ebp - 4], 0xb
push eax
push 0x1d6
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x6a0]
call fcn.00456040
mov dword [ebp - 4], 0x201
jmp 0x504f85
mov edi, dword [ebp - 0x488]
lea ecx, [ebp - 0x48]
call fcn.0045b5e0
push eax
push edi
mov ecx, ebx
call fcn.00513c90
test al, al
jne 0x505069
mov ecx, edi
call fcn.0045b610
test al, al
jne 0x504fbe
push edi
mov ecx, ebx
call fcn.00511fe0
mov ecx, edi
call fcn.00456d00
mov ecx, 0x5a32e0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6e0]
call fcn.00457210
mov byte [ebp - 4], 0x14
push eax
push 0x1cc
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6e0]
jmp 0x50509a
mov ecx, 0x5a3330
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6e8]
call fcn.00457210
mov byte [ebp - 4], 0x15
push eax
push 0x1cc
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6e8]
call fcn.00456040
cmp byte [ebx + 0xd0], 0
je 0x50516d
xor al, al
mov byte [ebp - 0x47d], al
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00455e90
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xf4]
call fcn.004f3790
push ecx
lea ecx, [ebp - 0x20]
call fcn.00455e90
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0xf4]
call fcn.004f37a0
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004743f0
test al, al
je 0x50516d
lea ecx, [ebp - 0x1c]
call fcn.0045b5e0
mov esi, eax
mov ecx, esi
call fcn.0045b610
test al, al
jne 0x505113
push esi
mov ecx, ebx
call fcn.00511fe0
jmp 0x50511a
mov byte [ebp - 0x47d], 1
lea ecx, [ebp - 0x1c]
call fcn.0051bc70
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004743f0
test al, al
jne 0x5050f4
mov al, byte [ebp - 0x47d]
test al, al
je 0x50516d
mov ecx, 0x5a3380
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6f0]
call fcn.00457210
mov byte [ebp - 4], 0x16
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x6f0]
call fcn.00456040
mov edx, 0x5a33c0
lea ecx, [ebx + 0x9c]
call fcn.0051b0a0
test al, al
jne 0x505199
mov edx, 0x594454
lea ecx, [ebx + 0x9c]
call fcn.0051b0a0
test al, al
je 0x50524b
push ecx
lea ecx, [ebp - 0xc0]
call fcn.00455e90
lea ecx, [ebp - 0xc0]
call fcn.005211f0
mov byte [ebp - 4], 0x17
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00455e90
lea eax, [ebp - 0xa8]
push eax
call fcn.00506300
mov byte [ebp - 4], 0x18
mov ecx, 0x5a33d0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x6f8]
call fcn.00457210
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xa8]
call fcn.0045b7e0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x6f8]
call fcn.00456040
push ecx
lea ecx, [ebp - 0xa8]
call fcn.0045b5e0
push eax
lea ecx, [ebp - 0xc0]
call fcn.0045b5e0
mov esi, eax
call fcn.00456ec0
mov edx, esi
mov ecx, eax
call fcn.00471bb0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xa8]
call fcn.00456040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00456040
lea ecx, [ebx + 0xa4]
mov edx, 0x5a33c0
call fcn.0051b0a0
test al, al
je 0x50576e
push ecx
lea ecx, [ebp - 0xdc]
call fcn.0045b520
lea ecx, [ebp - 0xdc]
call fcn.00473ce0
mov byte [ebp - 4], 0x1a
push ecx
lea ecx, [ebp - 0x98]
call fcn.0045a610
lea ecx, [ebp - 0x98]
call fcn.0045bd40
mov byte [ebp - 4], 0x1b
lea eax, [ebx + 0x24]
push eax
lea ecx, [ebp - 0x98]
call fcn.0045bd60
cmp byte [ebx + 0xc8], 0
je 0x505689
mov ecx, 0x59fa60
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x708]
call fcn.00457210
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x700]
call fcn.00455f30
mov byte [ebp - 4], 0x1d
push ecx
lea ecx, [ebp - 0x98]
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.00473de0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x700]
call fcn.00456040
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x708]
call fcn.00456040
push ecx
lea ecx, [ebp - 0x100]
call fcn.0045a610
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x48]
call fcn.0045b5e0
mov ecx, eax
call fcn.004f8f90
mov byte [ebp - 4], 0x1e
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00455e90
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x100]
call fcn.004f3790
push ecx
lea ecx, [ebp - 0x20]
call fcn.00455e90
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x100]
call fcn.004f37a0
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004743f0
test al, al
je 0x505675
jmp 0x505380
lea ecx, [ebp - 0x1c]
call fcn.0045b5e0
push eax
lea ecx, [ebp - 0x144]
call fcn.0051b740
mov byte [ebp - 4], 0x1f
push ecx
lea ecx, [ebp - 0xb0]
call fcn.00455e90
mov ecx, 0x5a3400
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x718]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x144]
call fcn.00477ed0
push eax
lea ecx, [ebp - 0x710]
call fcn.00457210
mov byte [ebp - 4], 0x21
push esi
mov edx, eax
lea ecx, [ebp - 0xb0]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x710]
call fcn.00456040
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x718]
call fcn.00456040
push ecx
lea ecx, [ebp - 0xc8]
call fcn.00455e90
lea edx, [ebp - 0xb0]
lea ecx, [ebp - 0xc8]
call fcn.0045f880
mov byte [ebp - 4], 0x25
push ecx
lea ecx, [ebp - 0x21c]
call fcn.00467440
lea ecx, [ebp - 0x21c]
call fcn.00465250
mov byte [ebp - 4], 0x26
push ecx
lea ecx, [ebp - 0x114]
call fcn.0045b520
push 0
lea ecx, [ebp - 0x114]
call fcn.00468bc0
mov byte [ebp - 4], 0x27
lea edx, [ebp - 0xc8]
lea ecx, [ebp - 0x93c]
call fcn.00457010
mov byte [ebp - 4], 0x28
push ecx
lea ecx, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x21c]
call fcn.00465360
mov bl, al
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x93c]
call fcn.00455f00
test bl, bl
je 0x505608
push 0
lea ecx, [ebp - 0x8f4]
call fcn.00468e10
mov byte [ebp - 4], 0x29
mov ecx, 0x5a3450
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x728]
call fcn.00457210
mov byte [ebp - 4], 0x2a
mov edx, eax
lea ecx, [ebp - 0x924]
call fcn.00457010
mov esi, eax
mov byte [ebp - 4], 0x2b
mov ecx, 0x5a3430
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x720]
call fcn.00457210
mov byte [ebp - 4], 0x2c
mov edx, eax
lea ecx, [ebp - 0x90c]
call fcn.00457010
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x8f4]
push ecx
push ecx
push esi
push ecx
push eax
lea ecx, [ebp - 0x114]
call fcn.00469bc0
add esp, 4
mov ecx, eax
call fcn.00469bc0
add esp, 4
mov ecx, eax
call fcn.00469060
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x90c]
call fcn.00455f00
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x720]
call fcn.00456040
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x924]
call fcn.00455f00
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x728]
call fcn.00456040
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x8f4]
call fcn.00468f90
lea ecx, [ebp - 0x164]
call fcn.0046c260
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x164]
call fcn.0046c2d0
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x12c]
call fcn.00457520
push eax
lea ecx, [ebp - 0x4b4]
call fcn.0051ae40
mov byte [ebp - 4], 0x30
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0xb0]
call fcn.0045fd50
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x4b4]
call fcn.00456040
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x12c]
call fcn.00455f00
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x164]
call fcn.0046b7c0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x114]
call fcn.00468f90
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x21c]
call fcn.00467350
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xc8]
call fcn.00456040
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xb0]
call fcn.00456040
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x144]
call fcn.00477e90
lea ecx, [ebp - 0x1c]
call fcn.0051bf70
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1c]
call fcn.004743f0
test al, al
jne 0x505380
mov ebx, dword [ebp - 0x4a0]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x100]
call fcn.0051b8a0
jmp 0x505750
cmp byte [ebx + 0xc9], 0
je 0x5056eb
mov ecx, 0x5a24a0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x738]
call fcn.00457210
mov byte [ebp - 4], 0x31
push eax
lea ecx, [ebp - 0x730]
call fcn.00455f30
mov byte [ebp - 4], 0x32
push ecx
lea ecx, [ebp - 0x98]
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.00473de0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x730]
call fcn.00456040
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x738]
jmp 0x50574b
cmp byte [ebx + 0xca], 0
je 0x505750
mov ecx, 0x591ab0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x748]
call fcn.00457210
mov byte [ebp - 4], 0x33
push eax
lea ecx, [ebp - 0x740]
call fcn.00455f30
mov byte [ebp - 4], 0x34
push ecx
lea ecx, [ebp - 0x98]
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.00473de0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x740]
call fcn.00456040
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x748]
call fcn.00456040
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x98]
call fcn.0045be30
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xdc]
call fcn.00473dd0
push ecx
lea ecx, [ebp - 0x84]
call fcn.00455e90
mov ecx, 0x5a3490
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x750]
call fcn.00457210
mov byte [ebp - 4], 0x35
lea edx, [ebx + 0x60]
push eax
lea ecx, [ebp - 0x84]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x750]
call fcn.00456040
lea ecx, [ebp - 0x84]
call fcn.0045b610
test al, al
je 0x50580e
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push str.v70
call fcn.00457210
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x758]
push eax
mov byte [ebp - 4], 0x37
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x39
push eax
lea ecx, [ebp - 0x84]
call fcn.0045b7c0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x758]
call fcn.00456040
cmp byte [ebx + 0xcb], 0
jne 0x50586b
mov ecx, 0x5a0bc0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x760]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x49c]
or ecx, 8
mov dword [ebp - 0x49c], ecx
lea ecx, [ebp - 0x84]
call fcn.0045ba80
mov edx, eax
mov ecx, esi
call fcn.0045bca0
test al, al
jne 0x505862
cmp byte [ebx + 0xcf], al
je 0x50586b
mov byte [ebp - 0x47d], 1
jmp 0x505872
mov byte [ebp - 0x47d], 0
mov dword [ebp - 4], 0x237
mov eax, dword [ebp - 0x49c]
test al, 8
je 0x505897
and eax, 0xfffffff7
mov dword [ebp - 0x49c], eax
lea ecx, [ebp - 0x760]
call fcn.00456040
cmp byte [ebp - 0x47d], 0
je 0x505c7b
push ecx
lea ecx, [ebp - 0x4c]
call fcn.00455e90
mov ecx, 0x5a3510
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x768]
call fcn.00457210
mov byte [ebp - 4], 0x3b
push eax
lea edx, [ebx + 0x60]
lea ecx, [ebp - 0x4c]
call fcn.00457990
add esp, 4
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x768]
call fcn.00456040
lea ecx, [ebp - 0x4c]
call fcn.0045b610
test al, al
je 0x505938
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5a3538
call fcn.00457210
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x770]
push eax
mov byte [ebp - 4], 0x3d
mov ecx, ebx
call fcn.004fc4b0
mov byte [ebp - 4], 0x3f
push eax
lea ecx, [ebp - 0x4c]
call fcn.0045b7c0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x770]
call fcn.00456040
push 0
lea ecx, [ebp - 0x4c]
call fcn.0045b5f0
cmp ax, 0x5f
jne 0x505950
lea ecx, [ebp - 0x4c]
call fcn.00456d00
cmp byte [ebx + 0xcf], 0
je 0x5059d4
mov ecx, 0x5a37d0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x788]
call fcn.00457210
mov esi, eax
mov byte [ebp - 4], 0x40
push 0x5928f8
lea ecx, [ebp - 0x780]
call fcn.00457210
mov byte [ebp - 4], 0x41
push esi
mov edx, eax
lea ecx, [ebp - 0x778]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x42
push eax
lea ecx, [ebp - 0x4c]
call fcn.0045c060
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x778]
call fcn.00456040
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x780]
call fcn.00456040
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x788]
call fcn.00456040
mov byte [ebp - 0x47d], 0
call fcn.004f5e50
test al, al
je 0x505bbd
mov byte [ebp - 4], 0x43
push edi
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x40]
call fcn.0045af80
add esp, 4
test al, al
jne 0x505a6f
mov ecx, edi
call fcn.0045b610
test al, al
jne 0x505af7
mov ecx, 0x5a3810
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x798]
call fcn.00457210
mov byte [ebp - 4], 0x44
push edi
mov edx, eax
lea ecx, [ebp - 0x790]
call fcn.0045bbe0
add esp, 4
mov byte [ebp - 4], 0x45
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x790]
call fcn.00456040
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x798]
call fcn.00456040
mov ecx, edi
call fcn.00456d00
jmp 0x505af7
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
push ecx
lea ecx, [ebp - 0xdc]
call fcn.0045b520
lea ecx, [ebp - 0xdc]
call fcn.00473ce0
mov byte [ebp - 4], 0x46
push ecx
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00473ed0
test al, al
jne 0x505ada
mov ecx, 0x5a3840
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7a0]
call fcn.00457210
mov byte [ebp - 4], 0x47
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x7a0]
call fcn.00456040
mov al, 1
mov byte [ebp - 0x47d], al
mov byte [ebp - 0x4a1], al
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0xdc]
call fcn.00473dd0
mov dword [ebp - 4], 0x23d
cmp byte [ebp - 0x47d], 0
jne 0x505c6f
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
lea eax, [ebp - 0x4c]
push eax
call fcn.00455f30
mov byte [ebp - 4], 0x4e
push ecx
mov ecx, esp
mov dword [ebp - 0x484], esp
lea eax, [ebp - 0x40]
push eax
call fcn.00455f30
mov byte [ebp - 4], 0x4f
mov byte [ebp - 4], 0x3d
call fcn.00457810
add esp, 8
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
push ecx
lea ecx, [ebp - 0xdc]
call fcn.0045b520
lea ecx, [ebp - 0xdc]
call fcn.00473ce0
mov byte [ebp - 4], 0x50
push ecx
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00473ed0
test al, al
jne 0x505c60
mov ecx, 0x5a3840
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7d0]
call fcn.00457210
mov byte [ebp - 4], 0x51
push eax
mov ecx, ebx
call fcn.00511fe0
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x7d0]
call fcn.00456040
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0xdc]
call fcn.00473dd0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x4c]
call fcn.00456040
mov ecx, 0x5a3930
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7d8]
call fcn.00457210
mov byte [ebp - 4], 0x52
push eax
push 0x1e0
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x7d8]
call fcn.00456040
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x5911c0
call fcn.00457210
mov byte [ebp - 4], 0x53
mov ecx, 0x5a3970
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7e0]
call fcn.00457210
mov byte [ebp - 4], 0x54
push eax
lea eax, [ebx + 0x70]
push eax
lea eax, [ebx + 0x6c]
push eax
mov byte [ebp - 4], 0x55
mov ecx, ebx
call fcn.0050d720
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x7e0]
call fcn.00456040
lea eax, [ebx + 0xac]
cmp byte [ebx + 0xd1], 0
jne 0x505d84
mov byte [ebp - 0x489], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push eax
call fcn.00455f30
mov byte [ebp - 4], 0x56
mov byte [ebp - 4], 0x37
mov cl, byte [ebp - 0x489]
call fcn.0045f540
add esp, 4
jmp 0x505d8a
push eax
call fcn.00518a10
mov byte [ebp - 0x491], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x84]
call fcn.00456040
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.0051bf30
mov dword [ebp - 4], 0x1ff
lea ecx, [ebp - 0xcc]
call fcn.00456040
mov byte [ebp - 4], 0xfb
lea ecx, [ebp - 0xf4]
call fcn.0045be30
mov byte [ebp - 4], 0xe9
lea ecx, [ebp - 0x74]
call fcn.00456040
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x60]
call fcn.00456040
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x88]
call fcn.00456040
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0xb8]
jmp 0x505e66
mov ecx, 0x5a28c0
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7e8]
call fcn.00457210
mov byte [ebp - 4], 0xbd
push eax
push 0x19a
mov ecx, ebx
call fcn.00513840
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0x7e8]
call fcn.00456040
mov ecx, 0x5a2930
call fcn.004f06e0
push eax
lea ecx, [ebp - 0x7f0]
call fcn.00457210
mov byte [ebp - 4], 0xbe
push eax
mov ecx, dword [ebp - 0x488]
call fcn.0045b7c0
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0x7f0]
call fcn.00456040
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x40]
call fcn.00456040
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0x3c]
call fcn.00456040
jmp 0x503c5f
lea esi, [ebx + 0x28]
mov ecx, esi
call fcn.0045f6d0
test al, al
je 0x505fe0
mov byte [ebp - 0x489], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x490], esp
push esi
call fcn.00455f30
mov dword [ebp - 4], 0x257
mov dword [ebp - 4], 0xffffffff
mov cl, byte [ebp - 0x489]
call fcn.0045f540
add esp, 4
cmp byte [ebx + 0xcb], 0
jne 0x505ff7
mov ecx, ebx
call fcn.00517880
mov ecx, ebx
call fcn.0051a3c0
mov al, byte [ebp - 0x491]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.0052ab62
mov esp, ebp
pop ebp
ret 4