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

Disassembly:
mov ecx, dword [0x9ec7ac]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x5d9959
sub esp, 0xf0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, str._S:___000st0_sgo01__.R8R9LlLtLuMnCcCfCoCsLmLoMcMeNdNlNoPcPdPePfPiPoPsScSkSmSoZlZpZsYiM___________n__s____Pn___n__ni____n__t______25ip53_:80__OUCNST__nE:_dD_sSwWid_____A4V1V6V2V3V5A3.0b0x0X0ogcjsV7
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.0048b440
movzx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
test al, al
je 0x5d8607
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x70], edx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x94], ebx
test eax, eax
jne 0x5d82fe
xor ebp, ebp
jmp 0x5d8332
mov dword [esp], ebx
mov dword [esp + 4], eax
lea ecx, [0x758e90]
mov dword [esp + 8], ecx
call fcn.0048a340
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5d85ea
test ecx, ecx
jne 0x5d8344
xor ebp, ebp
jmp 0x5d8378
mov dword [esp], edx
mov dword [esp + 4], ecx
lea eax, [0x758e90]
mov dword [esp + 8], eax
call fcn.0048a340
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5d85ea
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.00489d90
mov eax, dword [esp + 0xb0]
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test eax, eax
je 0x5d83b2
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d83c0
jmp 0x5d9940
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ecx + ebx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d8424
mov dword [esp + 0x68], ebx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x8c], edx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0xac], esi
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ebp
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00468df0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb0]
nop
nop
test eax, eax
je 0x5d8486
lea ecx, [esp + 0xb0]
cmp eax, ecx
je 0x5d8494
jmp 0x5d9928
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
inc ecx
mov edx, dword [esp + 0xb4]
cmp eax, ecx
jae 0x5d84ea
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], edx
mov dword [esp + 0xb8], ecx
mov byte [ecx + edx - 1], 0x2f
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.00489d90
mov eax, dword [esp + 0xb0]
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test eax, eax
je 0x5d852e
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d853c
jmp 0x5d9910
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ecx + ebx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d85a0
mov dword [esp + 0x68], ebx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x88], edx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0xac], esi
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ebp
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00468df0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
jmp 0x5d8734
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x5d87af
mov ecx, dword [esp + 0xf4]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x758e90]
mov dword [esp + 8], edx
call fcn.0048a340
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5d87af
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
call fcn.00489d90
mov eax, dword [esp + 0xb0]
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test eax, eax
je 0x5d867d
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d868b
jmp 0x5d98f8
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ecx + ebx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d86ef
mov dword [esp + 0x68], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x90], edx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0xac], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00468df0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5d8743
mov ecx, dword [eax]
jmp 0x5d8745
xor ecx, ecx
mov dword [esp + 0x50], ecx
lea eax, [0x6e41c0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.0044e0b0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa8], eax
lea edi, [esp + 0xc0]
xor eax, eax
call fcn.004686f4
lea eax, [0x6e7a00]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
lea edx, [esp + 0xc0]
mov dword [esp + 8], edx
call fcn.0040e1c0
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xa8]
xor edx, edx
jmp 0x5d87ec
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov dword [esi], ebp
lea eax, [esp + 0xc0]
mov dword [esp], eax
call fcn.0040e400
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0xc0]
test ebx, ebx
je 0x5d8881
inc edx
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
cmp eax, edx
jae 0x5d8849
mov dword [esp + 0x58], ebx
mov dword [esp + 0xa0], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6e41c0]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0xa0]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], eax
lea esi, [ecx + edx*8 - 4]
mov dword [esi], ebx
mov ebx, dword [0x9eca70]
lea esi, [ecx + edx*8 - 8]
test ebx, ebx
je 0x5d87cc
call fcn.00468460
mov dword [edi], ebp
mov ebx, dword [esi]
mov dword [edi + 4], ebx
jmp 0x5d87cc
mov dword [esp + 0x4c], edx
mov dword [esp + 0xa4], ecx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00409e70
mov eax, dword [esp + 0xc]
lea ecx, [0x7ac170]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0048c530
xor eax, eax
jmp 0x5d88bd
mov ecx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jge 0x5d8f31
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + eax*8]
mov ebx, dword [edx + 4]
mov dword [esp + 0x54], ebx
mov edx, dword [edx]
mov dword [esp + 0x9c], edx
lea ebp, [0x6e7a00]
mov dword [esp], ebp
mov esi, dword [esp + 0xfc]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.004107e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb0]
mov edx, dword [eax + 4]
mov eax, dword [eax]
nop
nop
test ecx, ecx
je 0x5d892e
lea ebx, [esp + 0xb0]
cmp ecx, ebx
je 0x5d893c
jmp 0x5d98e0
lea ecx, [esp + 0xb0]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ebx
mov ebp, dword [esp + 0xb4]
cmp ecx, ebx
jae 0x5d89a2
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xb8], ebx
mov byte [ebx + ebp - 1], 0x3b
mov ecx, dword [esp + 0xb0]
nop
nop
test ecx, ecx
je 0x5d89cb
lea ebx, [esp + 0xb0]
cmp ecx, ebx
je 0x5d89d9
jmp 0x5d98c8
lea ecx, [esp + 0xb0]
mov dword [esp + 0xb0], ecx
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ebx
mov ebp, dword [esp + 0xb4]
cmp ecx, ebx
jae 0x5d8a37
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xb8], ebx
mov byte [ebx + ebp - 1], 0x20
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x5d8f14
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x758e90]
mov dword [esp + 8], edx
call fcn.0048a340
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5d8f14
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.00489d90
mov eax, dword [esp + 0xb0]
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test eax, eax
je 0x5d8ab3
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d8ac1
jmp 0x5d98b0
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ebx + ecx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d8b25
mov dword [esp + 0x30], ecx
mov dword [esp + 0x84], edx
mov dword [esp + 0x64], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xac], esi
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00468df0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
nop
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
xor edx, edx
jmp 0x5d8f6c
cmp edx, eax
jge 0x5d8c1b
mov ebx, dword [esp + 0xb0]
nop
nop
test ebx, ebx
je 0x5d8b9f
lea ebp, [esp + 0xb0]
cmp ebx, ebp
je 0x5d8bad
jmp 0x5d9898
lea ebx, [esp + 0xb0]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0xb8]
inc ebp
mov esi, dword [esp + 0xb4]
cmp ebx, ebp
jae 0x5d8c0f
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov dword [esp + 0xb8], ebp
mov byte [ebp + esi - 1], 0x2a
mov ebx, dword [esp + 0xb0]
nop
nop
test ebx, ebx
je 0x5d8c38
lea ebp, [esp + 0xb0]
cmp ebx, ebp
je 0x5d8c46
jmp 0x5d9880
lea ebx, [esp + 0xb0]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0xb8]
inc ebp
mov esi, dword [esp + 0xb4]
cmp ebx, ebp
jb 0x5d8c64
cmp edx, eax
jmp 0x5d8cb0
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], esi
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
mov eax, ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xb8], ebp
mov byte [ebp + esi - 1], 0x3d
jge 0x5d8d73
mov edx, dword [esp + 0xb0]
nop
test edx, edx
je 0x5d8cde
lea ebx, [esp + 0xb0]
cmp edx, ebx
je 0x5d8cec
jmp 0x5d9868
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xb8]
lea ebx, [edx + 7]
mov ebp, dword [esp + 0xbc]
mov esi, dword [esp + 0xb4]
cmp ebp, ebx
jae 0x5d8d46
mov dword [esp + 0x64], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 7
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov dword [esi + edx], 0x2d667475
mov dword [esi + edx + 3], 0x2727382d
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebp
mov dword [esp + 0xb4], esi
xor edx, edx
xor ebx, ebx
jmp 0x5d9375
test eax, eax
jne 0x5d8d7b
xor edx, edx
jmp 0x5d8da4
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x758e90]
mov dword [esp + 8], edx
call fcn.0048a340
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x6c]
mov edx, eax
mov eax, dword [esp + 0x28]
test dl, dl
jne 0x5d8e49
mov edx, dword [esp + 0xb0]
nop
test edx, edx
je 0x5d8dc8
lea ebx, [esp + 0xb0]
cmp edx, ebx
je 0x5d8dd6
jmp 0x5d935c
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ebx
mov ebp, dword [esp + 0xb4]
cmp edx, ebx
jae 0x5d8e34
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xb8], ebx
mov byte [ebx + ebp - 1], 0x22
xor edx, edx
xor ebx, ebx
jmp 0x5d8fd8
mov edx, dword [esp + 0xb0]
nop
nop
test edx, edx
je 0x5d8e66
lea ebx, [esp + 0xb0]
cmp edx, ebx
je 0x5d8e74
jmp 0x5d8fbf
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [eax + ebx]
mov esi, dword [esp + 0xb4]
cmp edx, ebp
jae 0x5d8eca
mov dword [esp + 0x64], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
lea ecx, [0x6e4500]
mov dword [esp + 0x10], ecx
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], ebp
mov dword [esp + 0xac], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00468df0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
jmp 0x5d88b6
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
mov edx, ecx
neg ecx
cmp eax, ecx
ja 0x5d8f5c
mov dword [esp + 0x100], edx
mov dword [esp + 0x104], eax
add esp, 0xf0
ret
test edx, edx
je 0x5d8f65
call fcn.0045fa60
call fcn.0045faa0
mov edx, ebp
mov dword [esp + 0x64], edx
cmp edx, eax
jge 0x5d8b7c
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x5d8f89
lea ebp, [edx + 1]
jmp 0x5d8fad
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0045fc00
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
lea esi, [ebx - 0x20]
cmp esi, 0x5e
jbe 0x5d8f6a
cmp ebx, 9
je 0x5d8f6a
jmp 0x5d8b7a
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
inc edx
cmp edx, eax
jge 0x5d917a
movzx ebp, byte [edx + ecx]
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x5d8ff2
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x5d8fd7
cmp ebx, edx
ja 0x5d9353
mov ebp, edx
sub edx, ebx
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0xb0]
add ebx, ecx
nop
test edx, edx
je 0x5d9025
lea edi, [esp + 0xb0]
cmp edx, edi
je 0x5d9033
jmp 0x5d933b
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov dword [esp + 0x64], ebp
mov edx, dword [esp + 0xbc]
mov edi, dword [esp + 0xb8]
lea ecx, [esi + edi]
mov eax, dword [esp + 0xb4]
cmp edx, ecx
jae 0x5d9095
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x78], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x60], edx
mov dword [esp + 0xac], eax
mov dword [esp + 0x5c], ecx
lea ebp, [eax + edi]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.00468df0
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb0]
nop
test eax, eax
je 0x5d90f7
lea edx, [esp + 0xb0]
cmp eax, edx
je 0x5d9105
jmp 0x5d9323
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ebx
mov ebp, dword [esp + 0xb4]
cmp edx, ebx
jae 0x5d915b
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], ebx
mov byte [ebx + ebp - 1], 0x5c
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov ebx, edx
jmp 0x5d8fd7
cmp ebx, eax
ja 0x5d931a
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0xb0]
add ecx, ebx
nop
test eax, eax
je 0x5d91ab
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d91b9
jmp 0x5d9302
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d9217
mov dword [esp + 0x64], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x60], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xac], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00468df0
mov eax, dword [esp + 0x60]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb0]
nop
test eax, eax
je 0x5d9275
lea ecx, [esp + 0xb0]
cmp eax, ecx
je 0x5d9283
jmp 0x5d92ea
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
inc ecx
mov edx, dword [esp + 0xb4]
cmp eax, ecx
jae 0x5d92d9
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], edx
mov dword [esp + 0xb8], ecx
mov byte [ecx + edx - 1], 0x22
jmp 0x5d88b6
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
mov ecx, eax
mov eax, ebx
call fcn.00468520
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
mov eax, ebx
mov ecx, edx
call fcn.00468520
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
inc edx
cmp edx, eax
jge 0x5d96f7
mov dword [esp + 0x48], edx
movzx ebp, byte [edx + ecx]
xchg ebp, eax
mov byte [esp + 0x25], al
xchg ebp, eax
lea esi, [ebp - 0x21]
xchg esi, eax
cmp al, 0x5e
xchg esi, eax
jb 0x5d939c
mov esi, 1
jmp 0x5d940c
xchg ebp, eax
cmp al, 0x2a
xchg ebp, eax
jne 0x5d93aa
mov esi, 1
jmp 0x5d940c
xchg ebp, eax
cmp al, 0x27
xchg ebp, eax
jne 0x5d93b8
mov esi, 1
jmp 0x5d940c
xchg ebp, eax
cmp al, 0x25
xchg ebp, eax
jne 0x5d93c6
mov esi, 1
jmp 0x5d940c
mov dword [esp + 0x40], ebx
xchg ebp, ebx
movzx eax, bl
xchg ebp, ebx
nop
lea ecx, [0x737152]
mov dword [esp], ecx
mov dword [esp + 4], 0xf
mov dword [esp + 8], eax
call fcn.00488dd0
mov eax, dword [esp + 0xc]
test eax, eax
setge al
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x40]
movzx ebp, byte [esp + 0x25]
mov esi, eax
mov eax, dword [esp + 0x28]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5d9374
cmp ebx, edx
ja 0x5d985f
mov esi, edx
sub edx, ebx
mov edi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0xb0]
add ebx, ecx
nop
test edx, edx
je 0x5d944e
lea ecx, [esp + 0xb0]
cmp edx, ecx
jne 0x5d9847
mov ecx, dword [esp + 0x6c]
jmp 0x5d945c
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
lea eax, [edi + ecx]
mov esi, dword [esp + 0xb4]
cmp edx, eax
jae 0x5d94c0
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], edi
mov dword [esp + 0x80], ebx
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edx
mov dword [esp + 0xac], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
call fcn.00468df0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb0]
nop
nop
test eax, eax
je 0x5d9522
lea edx, [esp + 0xb0]
cmp eax, edx
je 0x5d9530
jmp 0x5d982f
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
inc ebx
mov ebp, dword [esp + 0xb4]
cmp edx, ebx
jae 0x5d9586
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], ebx
mov byte [ebx + ebp - 1], 0x25
movzx edx, byte [esp + 0x25]
mov ebx, edx
shr dl, 4
movzx edx, dl
mov ebp, dword [esp + 0xb0]
lea esi, [0x737754]
movzx edx, byte [esi + edx]
nop
test ebp, ebp
je 0x5d95c5
lea edi, [esp + 0xb0]
cmp ebp, edi
je 0x5d95d3
jmp 0x5d9817
lea ebp, [esp + 0xb0]
mov dword [esp + 0xb0], ebp
mov ebp, dword [esp + 0xbc]
mov edi, dword [esp + 0xb8]
inc edi
mov eax, dword [esp + 0xb4]
cmp ebp, edi
jae 0x5d963d
mov byte [esp + 0x27], dl
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xb4], eax
movzx edx, byte [esp + 0x27]
movzx ebx, byte [esp + 0x25]
lea esi, [0x737754]
mov dword [esp + 0xb8], edi
mov byte [edi + eax - 1], dl
and ebx, 0xf
mov edx, dword [esp + 0xb0]
movzx ebx, byte [ebx + esi]
nop
test edx, edx
je 0x5d966b
lea ebp, [esp + 0xb0]
cmp edx, ebp
je 0x5d9679
jmp 0x5d97ff
lea edx, [esp + 0xb0]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xbc]
mov ebp, dword [esp + 0xb8]
inc ebp
mov esi, dword [esp + 0xb4]
cmp edx, ebp
jae 0x5d96d8
mov byte [esp + 0x26], bl
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb4], esi
movzx ebx, byte [esp + 0x26]
mov dword [esp + 0xb8], ebp
mov byte [ebp + esi - 1], bl
mov edx, dword [esp + 0x48]
lea ebx, [edx + 1]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
jmp 0x5d9374
cmp ebx, eax
ja 0x5d97f6
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0xb0]
add ecx, ebx
nop
test eax, eax
je 0x5d9728
lea ebx, [esp + 0xb0]
cmp eax, ebx
je 0x5d9736
jmp 0x5d97de
lea eax, [esp + 0xb0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb8]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
jae 0x5d9794
mov dword [esp + 0x64], edx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x60], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x64], ebp
mov dword [esp + 0x60], eax
mov dword [esp + 0xac], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00468df0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
jmp 0x5d88b6
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
mov ecx, eax
mov eax, ebx
call fcn.00468520
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
mov eax, ebx
mov ecx, edx
call fcn.00468520
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
lea eax, [0x6e41c0]
mov dword [esp], eax
lea eax, [0x7aa508]
mov dword [esp + 4], eax
call fcn.004386b0
nop
call fcn.00467050
jmp fcn.005d8250