Function at 0x511930
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x74]
cmp eax, dword [ecx + 8]
jbe 0x51313e
sub esp, 0xf4
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
mov byte [esp + 8], 0x2f
call fcn.00402700
mov ecx, dword [esp + 0xc]
cmp ecx, 0xffffffff
jne 0x512b6f
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x512b52
mov ecx, dword [esp + 0xf8]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x59c980]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004bca10
mov eax, dword [esp + 0x10]
test eax, eax
jge 0x512b52
mov eax, dword [esp + 0xf8]
mov dword [esp], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.004bc650
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512b3f
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x513125
mov edx, dword [esp + 0xbc]
lea ebx, [eax + edx]
mov dword [esp + 0x70], ebx
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebx, ebp
ja 0x512af6
mov dword [esp + 0x6c], ebp
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x70]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x100]
test eax, eax
je 0x512aef
mov ecx, dword [eax]
mov dword [esp + 0x54], ecx
lea eax, [0x550cc0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.00441b50
mov eax, dword [esp + 0xc]
mov dword [esp + 0xac], eax
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.0045a354
lea eax, [0x552220]
mov dword [esp], eax
mov ecx, dword [esp + 0x100]
mov dword [esp + 4], ecx
lea edx, [esp + 0xc4]
mov dword [esp + 8], edx
call fcn.0040cec0
xor eax, eax
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0xac]
jmp 0x511b24
lea eax, [esp + 0xc4]
mov dword [esp], eax
call fcn.0040d130
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x5c], eax
mov ebx, dword [esp + 0xc4]
test ebx, ebx
je 0x511bbd
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
lea esi, [eax + 1]
cmp esi, ecx
ja 0x511b74
mov dword [esp + 0xa0], edx
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], ecx
lea ecx, [edx + eax*8 + 4]
mov dword [ecx], ebx
mov ecx, dword [0x795b00]
lea ebx, [edx + eax*8]
test ecx, ecx
jne 0x511b69
mov dword [ebx], ebp
jmp 0x511b06
mov edi, ebx
mov eax, ebp
call fcn.0045a0f0
jmp 0x511b06
mov dword [esp + 0x58], ebx
mov dword [esp + 0xa8], ebp
lea ebx, [0x550cc0]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.00441c00
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea esi, [eax + 1]
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0xa8]
jmp 0x511b43
mov dword [esp + 0xa4], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00408a90
mov eax, dword [esp + 0xc]
lea ecx, [0x5c1d70]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004851e0
xor eax, eax
jmp 0x51204b
inc eax
cmp edx, eax
jle 0x511fb2
jbe 0x51303a
mov dword [esp + 0x4c], eax
movzx esi, byte [eax + ebp]
xchg esi, eax
mov byte [esp + 0x21], al
xchg esi, eax
lea edi, [esi - 0x21]
xchg edi, eax
cmp al, 0x5e
xchg edi, eax
jb 0x511f2d
mov edi, 1
xchg edi, eax
test al, al
xchg edi, eax
je 0x511bf1
cmp eax, ecx
jb 0x51302f
mov edi, eax
sub eax, ecx
mov dword [esp + 0x38], eax
neg eax
sar eax, 0x1f
and ecx, eax
lea eax, [ecx + ebp]
nop
mov ecx, dword [esp + 0xb4]
test ecx, ecx
je 0x511f21
cmp ebx, ecx
jne 0x513017
mov ecx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x38]
lea edx, [ecx + ebp]
mov dword [esp + 0x6c], edx
mov edi, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp edx, edi
ja 0x511ee2
mov dword [esp + 0x68], edi
mov dword [esp + 0xb0], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.0045aa60
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x511ecf
lea edx, [esp + 0xb4]
cmp edx, eax
jne 0x512fff
mov ebx, dword [esp + 0xbc]
lea ebp, [ebx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebp
jb 0x511e8b
lea ebp, [ebx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + ebx], 0x25
movzx ebx, byte [esp + 0x21]
mov ebp, ebx
shr bl, 4
movzx ebx, bl
lea esi, [0x57dfb2]
movzx ebx, byte [esi + ebx]
nop
mov edi, dword [esp + 0xb4]
test edi, edi
je 0x511e7f
cmp edx, edi
jne 0x512fe7
mov edi, dword [esp + 0xbc]
lea edx, [edi + 1]
mov esi, dword [esp + 0xb8]
mov eax, ebp
mov ebp, dword [esp + 0xc0]
cmp ebp, edx
jb 0x511e34
lea edx, [edi + 1]
mov dword [esp + 0xbc], edx
mov byte [esi + edi], bl
and eax, 0xf
lea edx, [0x57dfb2]
movzx ebx, byte [edx + eax]
nop
mov ebp, dword [esp + 0xb4]
test ebp, ebp
je 0x511e21
lea esi, [esp + 0xb4]
cmp esi, ebp
jne 0x512fcf
mov ebp, dword [esp + 0xbc]
lea edi, [ebp + 1]
mov edx, dword [esp + 0xb8]
mov esi, dword [esp + 0xc0]
cmp edi, esi
ja 0x511dde
lea esi, [ebp + 1]
mov dword [esp + 0xbc], esi
mov byte [edx + ebp], bl
mov eax, dword [esp + 0x4c]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
mov ebp, dword [esp + 0x74]
jmp 0x511bf1
mov byte [esp + 0x23], bl
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edi
call fcn.00441c00
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], edx
movzx ebx, byte [esp + 0x23]
jmp 0x511db6
lea esi, [esp + 0xb4]
mov dword [esp + 0xb4], esi
jmp 0x511d9a
mov byte [esp + 0x22], bl
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
movzx eax, byte [esp + 0x21]
movzx ebx, byte [esp + 0x22]
jmp 0x511d61
mov dword [esp + 0xb4], edx
jmp 0x511d3f
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
lea edx, [esp + 0xb4]
jmp 0x511d02
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
jmp 0x511ce2
mov dword [esp + 0x78], eax
mov dword [esp + 0x68], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x68]
mov ebp, dword [esp + 0x38]
jmp 0x511c81
mov dword [esp + 0xb4], ebx
jmp 0x511c59
xchg esi, eax
cmp al, 0x2a
xchg esi, eax
jne 0x511f3e
mov edi, 1
jmp 0x511c21
xchg esi, eax
cmp al, 0x27
xchg esi, eax
jne 0x511f4f
mov edi, 1
jmp 0x511c21
xchg esi, eax
cmp al, 0x25
xchg esi, eax
jne 0x511f60
mov edi, 1
jmp 0x511c21
mov dword [esp + 0x48], ecx
nop
lea eax, [0x57d75a]
mov dword [esp], eax
mov dword [esp + 4], 0xf
xchg esi, eax
movzx ecx, al
xchg esi, eax
mov dword [esp + 8], ecx
call fcn.004bb4c0
mov eax, dword [esp + 0xc]
test eax, eax
xchg edi, ebx
setge bl
xchg edi, ebx
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
mov ebp, dword [esp + 0x74]
movzx esi, byte [esp + 0x21]
jmp 0x511c21
cmp edx, ecx
jb 0x512fc6
sub edx, ecx
mov eax, edx
neg edx
sar edx, 0x1f
and ecx, edx
add ecx, ebp
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x51238a
cmp ebx, edx
jne 0x512fae
mov edx, dword [esp + 0xbc]
lea ebx, [edx + eax]
mov dword [esp + 0x6c], ebx
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebx, ebp
ja 0x512347
mov dword [esp + 0x68], ebp
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
mov ecx, dword [esp + 0x70]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x5c]
cmp eax, ecx
jge 0x512acc
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + eax*8]
mov ebx, dword [edx + 4]
mov dword [esp + 0x34], ebx
mov edx, dword [edx]
mov dword [esp + 0x98], edx
lea ebp, [0x552220]
mov dword [esp], ebp
mov esi, dword [esp + 0x100]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.0040eab0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512ab9
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x5130b9
mov dword [esp + 0x44], ecx
mov dword [esp + 0x74], eax
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp ebp, edi
ja 0x512a6d
lea ebp, [edx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + edx], 0x3b
nop
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512a61
cmp ebx, edx
jne 0x5130a1
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebp
jb 0x512a15
lea ebp, [edx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + edx], 0x20
mov edx, dword [esp + 0x34]
test edx, edx
je 0x5129f8
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov dword [esp + 4], edx
lea ecx, [0x59c980]
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 1
call fcn.004bca10
mov eax, dword [esp + 0x10]
test eax, eax
jge 0x5129f8
mov eax, dword [esp + 0x98]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.004bc650
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5129e5
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x513089
mov edx, dword [esp + 0xbc]
lea ebp, [eax + edx]
mov dword [esp + 0x6c], ebp
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebp
jb 0x51299c
mov dword [esp + 0x68], esi
mov dword [esp + 0xb0], edi
add edx, edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov ecx, dword [esp + 0x44]
mov dword [esp + 4], ecx
call fcn.00511850
movzx eax, byte [esp + 8]
mov byte [esp + 0x20], al
test al, al
je 0x512990
nop
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x51297d
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x513071
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebp
jb 0x512934
lea ebp, [edx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + edx], 0x2a
nop
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512928
cmp ebx, edx
jne 0x513059
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebp
jb 0x5128df
lea ebp, [edx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + edx], 0x3d
test al, al
je 0x5123e4
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5123d8
cmp ebx, edx
jne 0x513041
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 7]
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp ebp, esi
ja 0x512396
mov dword [edi + edx], 0x2d667475
mov dword [edi + edx + 3], 0x2727382d
mov dword [esp + 0xbc], ebp
mov dword [esp + 0xc0], esi
mov dword [esp + 0xb8], edi
mov edx, dword [esp + 0x44]
mov ebp, dword [esp + 0x74]
xor eax, eax
xor ecx, ecx
jmp 0x511bf2
mov dword [esp + 0x68], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x64], edx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x64]
jmp 0x512003
mov dword [esp + 0xb4], ebx
jmp 0x511fdf
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], edx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x68]
lea ebx, [esp + 0xb4]
mov ebp, dword [esp + 0x6c]
jmp 0x512312
mov dword [esp + 0xb4], ebx
jmp 0x5122f2
mov ecx, dword [esp + 0x44]
test ecx, ecx
jne 0x5128a7
xor eax, eax
test al, al
jne 0x5127e4
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x5127d8
cmp ebx, edx
jne 0x512f7e
mov edx, dword [esp + 0xbc]
lea ebp, [edx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp ebp, edi
ja 0x512790
lea ebp, [edx + 1]
mov dword [esp + 0xbc], ebp
mov byte [esi + edx], 0x22
mov edx, dword [esp + 0x74]
xor eax, eax
xor ebp, ebp
jmp 0x51244b
inc eax
cmp ecx, eax
jle 0x512613
jbe 0x512f79
movzx esi, byte [eax + edx]
xchg esi, eax
cmp al, 0x22
xchg esi, eax
je 0x51246b
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
jne 0x51244a
cmp eax, ebp
jb 0x512f70
mov esi, eax
sub eax, ebp
mov edi, eax
neg eax
sar eax, 0x1f
and ebp, eax
lea eax, [ebp + edx]
nop
mov ebp, dword [esp + 0xb4]
test ebp, ebp
je 0x512607
cmp ebx, ebp
jne 0x512f58
mov dword [esp + 0x6c], esi
mov ebp, dword [esp + 0xbc]
lea edx, [ebp + edi]
mov dword [esp + 0x68], edx
mov ecx, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ecx, edx
jb 0x5125be
mov dword [esp + 0x64], ecx
mov dword [esp + 0xb0], esi
lea edx, [esi + ebp]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.0045aa60
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x5125ab
lea edx, [esp + 0xb4]
cmp edx, eax
jne 0x512f40
mov ebx, dword [esp + 0xbc]
lea ebp, [ebx + 1]
mov esi, dword [esp + 0xb8]
mov edi, dword [esp + 0xc0]
cmp edi, ebp
jb 0x51256a
lea edi, [ebx + 1]
mov dword [esp + 0xbc], edi
mov byte [esi + ebx], 0x5c
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x74]
lea ebx, [esp + 0xb4]
mov ebp, eax
jmp 0x51244a
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
lea edx, [esp + 0xb4]
jmp 0x512542
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
jmp 0x512526
mov dword [esp + 0x64], edi
mov dword [esp + 0x9c], eax
mov dword [esp + 0x60], ebp
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x9c]
mov ebp, dword [esp + 0x60]
mov edi, dword [esp + 0x64]
jmp 0x5124c5
mov dword [esp + 0xb4], ebx
jmp 0x51249c
cmp ecx, ebp
jb 0x512f39
sub ecx, ebp
mov eax, ecx
neg ecx
sar ecx, 0x1f
and ebp, ecx
lea ecx, [ebp + edx]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512784
cmp ebx, edx
jne 0x512f21
mov edx, dword [esp + 0xbc]
lea ebp, [eax + edx]
mov dword [esp + 0x6c], ebp
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp esi, ebp
jb 0x51273b
mov dword [esp + 0x68], esi
mov dword [esp + 0xb0], edi
add edx, edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x51272b
lea ecx, [esp + 0xb4]
cmp ecx, eax
jne 0x512f09
mov eax, dword [esp + 0xbc]
lea ecx, [eax + 1]
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0xc0]
cmp ebx, ecx
jb 0x5126f1
lea ecx, [eax + 1]
mov dword [esp + 0xbc], ecx
mov byte [edx + eax], 0x22
jmp 0x512044
lea ebp, [0x550e80]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00441c00
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xb8], edx
jmp 0x5126de
lea eax, [esp + 0xb4]
mov dword [esp + 0xb4], eax
jmp 0x5126c2
mov dword [esp + 0x68], edx
mov dword [esp + 0x64], eax
mov dword [esp + 0x88], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x68]
jmp 0x512666
mov dword [esp + 0xb4], ebx
jmp 0x512642
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
mov ecx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
jmp 0x512432
mov dword [esp + 0xb4], ebx
jmp 0x512412
nop
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x51289b
cmp ebx, eax
jne 0x512f96
mov eax, dword [esp + 0xbc]
lea edx, [ecx + eax]
mov dword [esp + 0x6c], edx
mov ebx, dword [esp + 0xc0]
mov ebp, dword [esp + 0xb8]
cmp edx, ebx
ja 0x512867
mov dword [esp + 0x68], ebx
mov dword [esp + 0xb0], ebp
add eax, ebp
mov dword [esp], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0045aa60
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
jmp 0x512044
mov dword [esp + 0x68], eax
lea ecx, [0x550e80]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00441c00
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x44]
jmp 0x51281d
mov dword [esp + 0xb4], ebx
jmp 0x5127fd
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x59c980]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004bca10
mov eax, dword [esp + 0x10]
test eax, eax
setl al
mov ecx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
jmp 0x5123f2
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
movzx eax, byte [esp + 0x20]
lea ebx, [esp + 0xb4]
jmp 0x5122c4
mov dword [esp + 0xb4], ebx
jmp 0x5122a4
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
movzx eax, byte [esp + 0x20]
lea ebx, [esp + 0xb4]
jmp 0x51227d
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
jmp 0x51225d
lea ebx, [esp + 0xb4]
jmp 0x51228b
mov dword [esp + 0x68], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x90], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x68]
jmp 0x5121d7
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
jmp 0x5121b3
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
jmp 0x51212d
mov dword [esp + 0xb4], ebx
jmp 0x51210d
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xb8], esi
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
lea ebx, [esp + 0xb4]
jmp 0x5120e6
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
jmp 0x5120be
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
add esp, 0xf4
ret
xor ecx, ecx
jmp 0x511a9c
mov dword [esp + 0x6c], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x80], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x6c]
jmp 0x511a4a
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
jmp 0x511a26
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
mov edx, dword [esp + 0xfc]
cmp ecx, edx
ja 0x513120
lea eax, [ecx + 1]
cmp eax, edx
ja 0x513119
mov dword [esp + 0x40], ecx
sub edx, eax
mov dword [esp + 0x24], edx
mov ebx, edx
neg edx
sar edx, 0x1f
and eax, edx
mov edx, dword [esp + 0xf8]
add eax, edx
mov dword [esp + 0x8c], eax
test ecx, ecx
jne 0x512ec6
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x512e66
test ebx, ebx
jne 0x512e83
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x512e66
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004bc650
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512e53
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x513101
mov edx, dword [esp + 0xbc]
lea ebp, [eax + edx]
mov dword [esp + 0x70], ebp
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xb8]
cmp ebp, esi
ja 0x512e0a
mov dword [esp + 0x6c], esi
mov dword [esp + 0xb0], edi
add edx, edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x70]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
nop
nop
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x512df7
lea ecx, [esp + 0xb4]
cmp ecx, eax
jne 0x5130e9
mov eax, dword [esp + 0xbc]
lea edx, [eax + 1]
mov ebx, dword [esp + 0xb8]
mov ebp, dword [esp + 0xc0]
cmp edx, ebp
ja 0x512dba
lea ecx, [eax + 1]
mov dword [esp + 0xbc], ecx
mov byte [ebx + eax], 0x2f
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
call fcn.004bc650
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
nop
mov edx, dword [esp + 0xb4]
test edx, edx
je 0x512da7
lea ebx, [esp + 0xb4]
cmp ebx, edx
jne 0x5130d1
mov edx, dword [esp + 0xbc]
lea ebx, [eax + edx]
mov dword [esp + 0x70], ebx
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xb8]
cmp ebx, ebp
ja 0x512d5e
mov dword [esp + 0x6c], ebp
mov dword [esp + 0xb0], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045aa60
mov eax, dword [esp + 0x70]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb8], eax
jmp 0x511a8b
mov dword [esp + 0x6c], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x84], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00441c00
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x6c]
jmp 0x512d18
lea edx, [esp + 0xb4]
mov dword [esp + 0xb4], edx
jmp 0x512cf8
lea ecx, [0x550e80]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00441c00
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xb8], ebx
jmp 0x512cac
lea ecx, [esp + 0xb4]
mov dword [esp + 0xb4], ecx
jmp 0x512c8c
mov dword [esp + 0x6c], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x94], ecx
lea eax, [0x550e80]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00441c00
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x6c]
jmp 0x512c2b
lea ebx, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
jmp 0x512c07
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf4
ret
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [0x59c980]
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 1
call fcn.004bca10
mov eax, dword [esp + 0x10]
test eax, eax
xchg ebp, ebx
setl bl
xchg ebp, ebx
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0xf8]
mov ebx, dword [esp + 0x24]
jmp 0x512bca
mov dword [esp], edx
mov dword [esp + 4], ecx
lea eax, [0x59c980]
mov dword [esp + 8], eax
mov byte [esp + 0xc], 1
call fcn.004bca10
mov eax, dword [esp + 0x10]
test eax, eax
xchg ebp, ebx
setl bl
xchg ebp, ebx
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0xf8]
mov ebx, dword [esp + 0x24]
jmp 0x512bb6
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb68]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb60]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov eax, ebp
call fcn.0045a1d0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb58]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb50]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov ecx, eax
mov eax, ebp
call fcn.0045a1d0
call fcn.0045a170
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb48]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb40]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb38]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov eax, ecx
mov ecx, edx
call fcn.0045a1d0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb30]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb28]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb20]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb18]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov edx, eax
mov eax, ecx
mov ecx, edx
call fcn.0045a1d0
mov ecx, edx
call fcn.0045a170
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb10]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb08]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beb00]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beaf8]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beaf0]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beae8]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beae0]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5bead8]
mov dword [esp + 4], eax
call fcn.0042f8e0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5bead0]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov ecx, edx
call fcn.0045a1d0
call fcn.0045a190
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beac8]
mov dword [esp + 4], eax
call fcn.0042f8e0
nop
call fcn.00458ba0
jmp fcn.00511930