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

Disassembly:
mov ecx, dword [0xf33f68]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x5df78d
sub esp, 0xf0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0xf8]
mov dword [esp + 4], ecx
lea edx, [0x7bc1d4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004e2dd0
movzx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test al, al
je 0x5de447
mov dword [esp + 0x2c], edx
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x94], ebx
test eax, eax
jne 0x5de13e
xor ebp, ebp
jmp 0x5de172
mov dword [esp], ebx
mov dword [esp + 4], eax
lea ecx, [0x7f324c]
mov dword [esp + 8], ecx
call fcn.004e1c00
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5de42a
test edx, edx
jne 0x5de184
xor ebp, ebp
jmp 0x5de1b8
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x7f324c]
mov dword [esp + 8], eax
call fcn.004e1c00
mov eax, dword [esp + 0xc]
test eax, eax
setl al
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, eax
mov eax, dword [esp + 0x44]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5de42a
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004e1650
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x5de1f2
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5de200
jmp 0x5df774
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5de264
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x68], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0xbc], esi
mov dword [esp + 0x64], ebp
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
nop
test eax, eax
je 0x5de2c6
lea ecx, [esp + 0x98]
cmp eax, ecx
je 0x5de2d4
jmp 0x5df75c
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
inc ecx
mov edx, dword [esp + 0x9c]
cmp eax, ecx
jae 0x5de32a
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], 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.004e1650
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x5de36e
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5de37c
jmp 0x5df744
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5de3e0
mov dword [esp + 0x34], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x68], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0xbc], esi
mov dword [esp + 0x68], ebp
mov dword [esp + 0x64], eax
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x5de574
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x5de5ef
mov ecx, dword [esp + 0xf4]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x7f324c]
mov dword [esp + 8], edx
call fcn.004e1c00
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5de5ef
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
call fcn.004e1650
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x5de4bd
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5de4cb
jmp 0x5df72c
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [edx + ebx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5de52f
mov dword [esp + 0x68], ebx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x3c], edx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5de583
mov ecx, dword [eax]
jmp 0x5de585
xor ecx, ecx
mov dword [esp + 0x50], ecx
lea eax, [0x776800]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.00450b30
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb8], eax
lea edi, [esp + 0xc0]
xor eax, eax
call fcn.0046ca74
lea eax, [0x779ea0]
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.0040f120
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xb8]
xor edx, edx
jmp 0x5de62c
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.0040f310
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0xc0]
test ebx, ebx
je 0x5de6c1
inc edx
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
cmp eax, edx
jae 0x5de689
mov dword [esp + 0x58], ebx
mov dword [esp + 0xb0], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x776800]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0xb0]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], eax
lea esi, [ecx + edx*8 - 4]
mov dword [esi], ebx
mov ebx, dword [0xf34078]
lea esi, [ecx + edx*8 - 8]
test ebx, ebx
je 0x5de60c
call fcn.0046c7e0
mov dword [edi], ebp
mov ebx, dword [esi]
mov dword [edi + 4], ebx
jmp 0x5de60c
mov dword [esp + 0x4c], edx
mov dword [esp + 0xb4], ecx
lea ebx, [0xc7edd0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.0049a210
xor eax, eax
jmp 0x5de6f1
mov ecx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x4c]
cmp eax, ecx
jge 0x5ded65
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0xb4]
lea edx, [ecx + eax*8]
mov ebx, dword [edx + 4]
mov dword [esp + 0x54], ebx
mov edx, dword [edx]
mov dword [esp + 0xac], edx
lea ebp, [0x779ea0]
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.004116d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x98]
mov edx, dword [eax + 4]
mov eax, dword [eax]
nop
nop
test ecx, ecx
je 0x5de762
lea ebx, [esp + 0x98]
cmp ecx, ebx
je 0x5de770
jmp 0x5df714
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp ecx, ebx
jae 0x5de7d6
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x3b
mov ecx, dword [esp + 0x98]
nop
nop
test ecx, ecx
je 0x5de7ff
lea ebx, [esp + 0x98]
cmp ecx, ebx
je 0x5de80d
jmp 0x5df6fc
lea ecx, [esp + 0x98]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp ecx, ebx
jae 0x5de86b
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x20
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x5ded48
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [0x7f324c]
mov dword [esp + 8], edx
call fcn.004e1c00
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x5ded48
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.004e1650
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
nop
test eax, eax
je 0x5de8e7
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5de8f5
jmp 0x5df6e4
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5de959
mov dword [esp + 0x84], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x64], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
nop
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
xor edx, edx
jmp 0x5deda0
cmp edx, eax
jge 0x5dea4f
mov ebx, dword [esp + 0x98]
nop
nop
test ebx, ebx
je 0x5de9d3
lea ebp, [esp + 0x98]
cmp ebx, ebp
je 0x5de9e1
jmp 0x5df6cc
lea ebx, [esp + 0x98]
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp ebx, ebp
jae 0x5dea43
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov dword [esp + 0xa0], ebp
mov byte [ebp + esi - 1], 0x2a
mov ebx, dword [esp + 0x98]
nop
nop
test ebx, ebx
je 0x5dea6c
lea ebp, [esp + 0x98]
cmp ebx, ebp
je 0x5dea7a
jmp 0x5df6b4
lea ebx, [esp + 0x98]
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp ebx, ebp
jb 0x5dea98
cmp edx, eax
jmp 0x5deae4
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], 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 + 0xa0], ebp
mov byte [ebp + esi - 1], 0x3d
jge 0x5deba7
mov edx, dword [esp + 0x98]
nop
test edx, edx
je 0x5deb12
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x5deb20
jmp 0x5df69c
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa0]
lea ebx, [edx + 7]
mov ebp, dword [esp + 0xa4]
mov esi, dword [esp + 0x9c]
cmp ebp, ebx
jae 0x5deb7a
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, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
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 + 0xa0], ebx
mov dword [esp + 0xa4], ebp
mov dword [esp + 0x9c], esi
xor edx, edx
xor ebx, ebx
jmp 0x5df1a9
test eax, eax
jne 0x5debaf
xor edx, edx
jmp 0x5debd8
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x7f324c]
mov dword [esp + 8], edx
call fcn.004e1c00
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 0x5dec7d
mov edx, dword [esp + 0x98]
nop
test edx, edx
je 0x5debfc
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x5dec0a
jmp 0x5df190
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x5dec68
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xa0], ebx
mov byte [ebx + ebp - 1], 0x22
xor edx, edx
xor ebx, ebx
jmp 0x5dee0c
mov edx, dword [esp + 0x98]
nop
nop
test edx, edx
je 0x5dec9a
lea ebx, [esp + 0x98]
cmp edx, ebx
je 0x5deca8
jmp 0x5dedf3
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [eax + ebx]
mov esi, dword [esp + 0x9c]
cmp edx, ebp
jae 0x5decfe
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, [0x776880]
mov dword [esp + 0x10], ecx
call fcn.00450c90
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 + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0046d170
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x5de6ea
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
add esp, 0xf0
ret
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x9c]
mov edx, ecx
neg ecx
cmp eax, ecx
ja 0x5ded90
mov dword [esp + 0x100], edx
mov dword [esp + 0x104], eax
add esp, 0xf0
ret
test edx, edx
je 0x5ded99
call fcn.00464060
call fcn.004640a0
mov edx, ebp
mov dword [esp + 0x64], edx
cmp edx, eax
jge 0x5de9b0
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x5dedbd
lea ebp, [edx + 1]
jmp 0x5dede1
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00464200
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 0x5ded9e
cmp ebx, 9
je 0x5ded9e
jmp 0x5de9ae
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
inc edx
cmp edx, eax
jge 0x5defae
movzx ebp, byte [ecx + edx]
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x5dee26
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x5dee0b
cmp ebx, edx
ja 0x5df187
mov ebp, edx
sub edx, ebx
mov esi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x98]
add ebx, ecx
nop
test edx, edx
je 0x5dee59
lea edi, [esp + 0x98]
cmp edx, edi
je 0x5dee67
jmp 0x5df16f
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov dword [esp + 0x64], ebp
mov edx, dword [esp + 0xa4]
mov edi, dword [esp + 0xa0]
lea ecx, [esi + edi]
mov eax, dword [esp + 0x9c]
cmp edx, ecx
jae 0x5deec9
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, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
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 + 0x5c], ecx
mov dword [esp + 0xbc], eax
lea ebp, [eax + edi]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.0046d170
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
test eax, eax
je 0x5def2b
lea edx, [esp + 0x98]
cmp eax, edx
je 0x5def39
jmp 0x5df157
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x5def8f
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov dword [esp + 0xa0], 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 0x5dee0b
cmp ebx, eax
ja 0x5df14e
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0x98]
add ecx, ebx
nop
test eax, eax
je 0x5defdf
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5defed
jmp 0x5df136
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [edx + ebx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5df04b
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], edx
mov dword [esp + 0x74], ecx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
test eax, eax
je 0x5df0a9
lea ecx, [esp + 0x98]
cmp eax, ecx
je 0x5df0b7
jmp 0x5df11e
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
inc ecx
mov edx, dword [esp + 0x9c]
cmp eax, ecx
jae 0x5df10d
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], ecx
mov byte [ecx + edx - 1], 0x22
jmp 0x5de6ea
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
mov ecx, eax
mov eax, ebx
call fcn.0046c8b0
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
mov eax, ebx
mov ecx, edx
call fcn.0046c8b0
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
inc edx
cmp edx, eax
jge 0x5df52b
mov dword [esp + 0x48], edx
movzx ebp, byte [ecx + edx]
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 0x5df1d0
mov esi, 1
jmp 0x5df240
xchg ebp, eax
cmp al, 0x2a
xchg ebp, eax
jne 0x5df1de
mov esi, 1
jmp 0x5df240
xchg ebp, eax
cmp al, 0x27
xchg ebp, eax
jne 0x5df1ec
mov esi, 1
jmp 0x5df240
xchg ebp, eax
cmp al, 0x25
xchg ebp, eax
jne 0x5df1fa
mov esi, 1
jmp 0x5df240
mov dword [esp + 0x40], ebx
xchg ebp, ebx
movzx eax, bl
xchg ebp, ebx
nop
lea ecx, [0x7c2e5d]
mov dword [esp], ecx
mov dword [esp + 4], 0xf
mov dword [esp + 8], eax
call fcn.004e02f0
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 0x5df1a8
cmp ebx, edx
ja 0x5df693
mov esi, edx
sub edx, ebx
mov edi, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x98]
add ebx, ecx
nop
test edx, edx
je 0x5df282
lea ecx, [esp + 0x98]
cmp edx, ecx
jne 0x5df67b
mov ecx, dword [esp + 0x6c]
jmp 0x5df290
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
lea eax, [ecx + edi]
mov esi, dword [esp + 0x9c]
cmp edx, eax
jae 0x5df2f4
mov dword [esp + 0x64], edi
mov dword [esp + 0x80], ebx
mov dword [esp + 0x60], ecx
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], eax
mov dword [esp + 0xbc], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
call fcn.0046d170
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
nop
nop
test eax, eax
je 0x5df356
lea edx, [esp + 0x98]
cmp eax, edx
je 0x5df364
jmp 0x5df663
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
inc ebx
mov ebp, dword [esp + 0x9c]
cmp edx, ebx
jae 0x5df3ba
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], ebp
mov dword [esp + 0xa0], 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 + 0x98]
lea esi, [0x7c368c]
movzx edx, byte [esi + edx]
nop
test ebp, ebp
je 0x5df3f9
lea edi, [esp + 0x98]
cmp ebp, edi
je 0x5df407
jmp 0x5df64b
lea ebp, [esp + 0x98]
mov dword [esp + 0x98], ebp
mov ebp, dword [esp + 0xa4]
mov edi, dword [esp + 0xa0]
inc edi
mov eax, dword [esp + 0x9c]
cmp ebp, edi
jae 0x5df471
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, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x9c], eax
movzx edx, byte [esp + 0x27]
movzx ebx, byte [esp + 0x25]
lea esi, [0x7c368c]
mov dword [esp + 0xa0], edi
mov byte [edi + eax - 1], dl
and ebx, 0xf
mov edx, dword [esp + 0x98]
movzx ebx, byte [ebx + esi]
nop
test edx, edx
je 0x5df49f
lea ebp, [esp + 0x98]
cmp edx, ebp
je 0x5df4ad
jmp 0x5df633
lea edx, [esp + 0x98]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0xa4]
mov ebp, dword [esp + 0xa0]
inc ebp
mov esi, dword [esp + 0x9c]
cmp edx, ebp
jae 0x5df50c
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, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x9c], esi
movzx ebx, byte [esp + 0x26]
mov dword [esp + 0xa0], 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 0x5df1a8
cmp ebx, eax
ja 0x5df62a
sub eax, ebx
mov edx, eax
neg eax
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0x98]
add ecx, ebx
nop
test eax, eax
je 0x5df55c
lea ebx, [esp + 0x98]
cmp eax, ebx
je 0x5df56a
jmp 0x5df612
lea eax, [esp + 0x98]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0xa0]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x9c]
cmp eax, ebp
jae 0x5df5c8
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, [0x776880]
mov dword [esp + 0x10], eax
call fcn.00450c90
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], eax
mov dword [esp + 0x60], ebp
mov dword [esp + 0xbc], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046d170
mov eax, dword [esp + 0x60]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x9c], eax
jmp 0x5de6ea
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
mov ecx, eax
mov eax, ebx
call fcn.0046c8b0
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
mov eax, ebx
mov ecx, edx
call fcn.0046c8b0
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
lea eax, [0x776800]
mov dword [esp], eax
lea eax, [0xc7e308]
mov dword [esp + 4], eax
call fcn.00439a40
nop
call fcn.0046b3d0
jmp fcn.005de090