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

Disassembly:
sub esp, 0x128
push ebx
push ebp
push esi
mov esi, dword [esp + 0x13c]
push edi
test esi, esi
jne 0x483119
lea eax, [esp + 0x154]
cmp dword [esp + 0x154], esi
jne 0x483100
push 1
push esi
push esi
push esi
push esi
push esi
push eax
call fcn.004830c0
add esp, 0x1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
sub eax, dword [esp + 0x13c]
cdq
xor eax, edx
sub eax, edx
neg eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ebp, dword [esp + 0x14c]
mov ecx, dword [ebp]
cmp ecx, dword [ebp + 4]
jae 0x485c18
mov ebx, dword [esp + 0x13c]
mov edx, dword [esp + 0x154]
inc dword [ebp]
cmp edx, dword [ebp + 8]
jae 0x485c2b
cmp dword [ebp + 0x98], 2
jne 0x483173
mov eax, dword [esp + 0x150]
lea ecx, [esp + 0x48]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x150], ecx
mov dword [ebp + 0x98], 0
mov cl, byte [esi]
movzx eax, cl
xor edx, edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], eax
cmp eax, 0x9b
ja case.0x483198.15
movzx eax, byte [eax + 0x486b28]
jmp dword [eax*4 + 0x4869f0]
cmp dword [ebp + 0x6c], edx
je 0x485e95
movzx eax, byte [esi + 1]
mov ecx, dword [esp + 0x1c]
movzx edx, byte [ecx + 0x4a18a0]
add esi, eax
add esi, edx
mov dword [esp + 0x140], esi
jmp 0x483173
mov ecx, dword [ebp + 0xac]
mov edi, dword [esp + 0x144]
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x28], ecx
lea ecx, [ecx]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
push eax
push ebp
push ecx
push edi
lea edx, [esi + 3]
push edx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x48325e
cmp eax, 0xfffffc20
jne 0x483236
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add ecx, esi
cmp dword [ebp + 0x7c], ecx
jae 0x4869e5
cmp byte [esi], 0x71
je 0x48323e
cmp byte [ecx], 0x71
jmp 0x483238
test eax, eax
jne 0x4869e5
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
mov edx, dword [esp + 0x28]
shl eax, 8
or eax, ecx
add esi, eax
mov dword [ebp + 0xac], edx
cmp byte [esi], 0x71
je 0x4831e0
jmp 0x483268
mov edi, dword [ebp + 0x7c]
mov dword [esp + 0x144], edi
mov al, byte [esi]
cmp al, 0x7c
je 0x483280
cmp al, 0x71
jne case.0x486851.14
jmp 0x483280
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
cmp byte [esi], 0x71
je 0x483280
cmp byte [esi], 0x72
mov eax, dword [ebp + 0x8c]
mov ebx, dword [ebp + 0x80]
mov dword [esp + 0x148], eax
je 0x4832b6
cmp ebx, dword [esp + 0x20]
jne 0x4859b9
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
mov dword [esp + 0x24], edx
jmp 0x483ded
movzx edi, byte [esi + 1]
movzx edx, byte [esi + 2]
shl edi, 8
or edi, edx
cmp byte [esi + 3], 0x70
jne 0x4833c4
mov ecx, dword [0x4af258]
test ecx, ecx
je 0x4833c1
movzx eax, byte [esi + 4]
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x90], edx
mov edx, dword [ebp + 0x78]
sub edx, eax
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0x144]
sub edx, eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x9c], edx
mov edx, ebx
sub edx, eax
movzx eax, byte [esi + 5]
shl eax, 8
mov dword [esp + 0xa0], edx
movzx edx, byte [esi + 6]
or eax, edx
movzx edx, byte [esi + 8]
mov dword [esp + 0xb0], eax
movzx eax, byte [esi + 7]
shl eax, 8
or eax, edx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov edx, dword [ebp + 0xa8]
sar eax, 1
mov dword [esp + 0xa4], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0xac], edx
mov dword [esp + 0xa8], eax
mov eax, dword [ebp + 0xb0]
lea edx, [esp + 0x88]
push edx
mov dword [esp + 0x8c], 2
mov dword [esp + 0xbc], eax
call ecx
add esp, 4
test eax, eax
jg case.0x486851.14
js 0x4869e5
add esi, 0xa
movzx ecx, byte [esi + 3]
lea eax, [esi + 3]
cmp ecx, 0x89
je 0x48360a
cmp ecx, 0x8a
je 0x48360a
cmp ecx, 0x87
je 0x48345e
cmp ecx, 0x88
je 0x48345e
cmp ecx, 0x8b
jne 0x48340f
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
jmp 0x48379c
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push 0
push ebp
push ecx
push edx
push eax
push ebx
mov dword [ebp + 0x98], 1
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x485925
test eax, eax
je 0x483457
cmp eax, 0xfffffc20
jne 0x4869e5
add esi, edi
jmp 0x48379c
movzx eax, byte [esi + 4]
movzx edx, byte [esi + 5]
shl eax, 8
or eax, edx
add eax, eax
cmp eax, dword [esp + 0x148]
jge 0x483483
mov edx, dword [ebp + 0xc]
cmp dword [edx + eax*4], 0
jge 0x4835f8
mov dword [esp + 0x14], 0
cmp ecx, 0x88
jne 0x483782
mov ecx, dword [ebp + 0x28]
sar eax, 1
cmp dword [ebp + 0x20], 0
mov edx, ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], 0
jle 0x4834d9
movzx edi, byte [edx + 1]
movzx edx, byte [edx]
shl edx, 8
or edi, edx
mov edx, dword [esp + 0x20]
cmp edi, eax
je 0x4834d9
mov edi, dword [esp + 0x18]
add edx, dword [ebp + 0x24]
inc edi
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], edi
cmp edi, dword [ebp + 0x20]
jl 0x4834b0
mov eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x20]
jge 0x483782
cmp edx, ecx
jbe 0x48355a
lea ebx, [ebx]
sub edx, dword [ebp + 0x24]
mov eax, dword [esp + 0x20]
lea edi, [edx + 2]
add eax, 2
lea ecx, [ecx]
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x483520
test cl, cl
je 0x48351c
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x483520
add eax, 2
add edi, 2
test cl, cl
jne 0x483500
xor eax, eax
jmp 0x483525
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x48355a
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x148]
jge 0x48354d
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + eax*4], 0
jge 0x4835f8
mov dword [esp + 0x14], 0
cmp edx, dword [ebp + 0x28]
ja 0x4834f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
inc eax
mov edx, ecx
mov dword [esp + 0x18], eax
cmp eax, dword [ebp + 0x20]
jge 0x483782
add ecx, 2
mov dword [esp + 0x2c], ecx
lea esp, [esp]
add edx, dword [ebp + 0x24]
mov eax, dword [esp + 0x2c]
lea edi, [edx + 2]
lea ebx, [ebx]
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x4835b0
test cl, cl
je 0x4835ac
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x4835b0
add eax, 2
add edi, 2
test cl, cl
jne 0x483590
xor eax, eax
jmp 0x4835b5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x483782
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
shl ecx, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x148]
jge 0x4835dd
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + eax*4], 0
jge 0x4835f8
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], eax
cmp eax, dword [ebp + 0x20]
jl 0x483580
jmp 0x483782
mov dword [esp + 0x14], 1
mov eax, 3
jmp 0x48378f
mov edx, dword [ebp + 0xa4]
test edx, edx
jne 0x483628
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
jmp 0x48379c
movzx eax, byte [esi + 4]
movzx edi, byte [esi + 5]
shl eax, 8
or eax, edi
cmp eax, 0xffff
je 0x4835f8
mov edx, dword [edx + 4]
mov dword [esp + 0x2c], edx
cmp eax, edx
je 0x4835f8
xor edi, edi
mov dword [esp + 0x14], edi
cmp ecx, 0x8a
jne 0x483782
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], edi
cmp dword [ebp + 0x20], edi
jle 0x483695
lea esp, [esp]
movzx ecx, byte [edx]
movzx edi, byte [edx + 1]
shl ecx, 8
or ecx, edi
cmp ecx, eax
je 0x483691
mov ecx, dword [esp + 0x18]
add edx, dword [ebp + 0x24]
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, dword [ebp + 0x20]
jl 0x483670
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x20]
jge 0x483782
cmp edx, dword [ebp + 0x28]
jbe 0x483703
sub edx, dword [ebp + 0x24]
mov eax, dword [esp + 0x20]
lea edi, [edx + 2]
add eax, 2
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x4836d4
test cl, cl
je 0x4836d0
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x4836d4
add eax, 2
add edi, 2
test cl, cl
jne 0x4836b4
xor eax, eax
jmp 0x4836d9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x483703
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
xor eax, eax
cmp ecx, dword [esp + 0x2c]
sete al
mov dword [esp + 0x14], eax
test eax, eax
jne 0x483600
cmp edx, dword [ebp + 0x28]
ja 0x4836a7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [ebp + 0x20]
jge 0x483782
mov ecx, edx
add ecx, 2
mov dword [esp + 0x30], ecx
add edx, dword [ebp + 0x24]
mov eax, dword [esp + 0x30]
lea edi, [edx + 2]
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x483748
test cl, cl
je 0x483744
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x483748
add eax, 2
add edi, 2
test cl, cl
jne 0x483728
xor eax, eax
jmp 0x48374d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x483782
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
shl eax, 8
or eax, ecx
xor ecx, ecx
cmp eax, dword [esp + 0x2c]
sete cl
mov eax, ecx
mov dword [esp + 0x14], eax
test eax, eax
jne 0x483600
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [ebp + 0x20]
jl 0x48371e
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
cmp dword [esp + 0x14], 0
jne 0x485967
cmp byte [esi], 0x71
je 0x485967
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
lea ecx, [eax + eax]
mov dword [ebp + 0x90], eax
cmp ecx, dword [ebp + 0x14]
jl 0x4837e5
add esi, 3
mov dword [ebp + 0x3c], 1
mov dword [esp + 0x140], esi
jmp 0x483173
mov edi, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
sub edi, eax
mov eax, dword [edx + edi*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, ebx
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
cmp dword [esp + 0x148], ecx
jg 0x483812
add ecx, 2
mov dword [esp + 0x148], ecx
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
mov ecx, dword [ebp + 0xac]
mov eax, 1
mov dword [esp + 0x28], ecx
cmp dword [ebp + 0x98], eax
jne 0x483844
mov dword [esp + 0x14], eax
mov dword [ebp + 0x98], edx
jmp 0x483848
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x148]
nop
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x144]
inc edx
push edx
push 0
push ebp
push edi
push eax
lea ecx, [esi + 3]
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x4838ad
cmp eax, 0xfffffc19
je 0x4838ad
test eax, eax
je 0x48388d
cmp eax, 0xfffffc20
jne 0x4869e5
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
mov ecx, dword [esp + 0x28]
shl edx, 8
or edx, eax
add esi, edx
mov dword [ebp + 0xac], ecx
cmp byte [esi], 0x71
je 0x483850
jmp 0x4838b7
mov edx, dword [ebp + 0x7c]
mov dword [esp + 0x144], edx
cmp byte [esi], 0x72
je case.0x486851.14
cmp dword [esp + 0x14], 0
jne 0x486209
jmp 0x4838d0
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
cmp byte [esi], 0x71
je 0x4838d0
mov edx, dword [ebp + 0x8c]
add esi, 3
mov dword [esp + 0x140], esi
mov dword [esp + 0x148], edx
jmp 0x483173
mov eax, dword [ebp + 0xac]
mov dword [esp + 0x28], eax
mov eax, 1
cmp dword [ebp + 0x98], eax
jne 0x483923
mov dword [esp + 0x14], eax
mov dword [ebp + 0x98], edx
jmp 0x483927
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x148]
mov edi, edi
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x144]
inc ecx
push ecx
push 0
push ebp
push edi
push edx
lea eax, [esi + 3]
push eax
push ebx
call fcn.004830c0
mov ecx, dword [esp + 0x44]
add esp, 0x1c
mov dword [ebp + 0xac], ecx
cmp eax, 1
je case.0x486851.14
cmp eax, 0xfffffc19
je case.0x486851.14
cmp eax, 0xfffffc1e
je 0x4839b0
cmp eax, 0xfffffc1d
je 0x4839b0
cmp eax, 0xfffffc1a
je 0x4839b0
test eax, eax
je 0x483994
cmp eax, 0xfffffc20
jne 0x4869e5
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
add esi, edx
cmp byte [esi], 0x71
je 0x483930
jmp 0x4839c4
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add esi, ecx
cmp byte [esi], 0x71
je 0x4839b0
cmp dword [esp + 0x14], 0
jne 0x486209
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
sub ebx, eax
cmp ebx, dword [ebp + 0x74]
jb case.0x486851.14
cmp ebx, dword [ebp + 0x84]
jae 0x483a04
mov dword [ebp + 0x84], ebx
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
mov ecx, dword [0x4af258]
test ecx, ecx
je 0x483ad2
movzx edx, byte [esi + 1]
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x54], edx
mov edx, dword [ebp + 0x78]
sub edx, eax
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0x144]
sub edx, eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x64], edx
mov edx, ebx
sub edx, eax
movzx eax, byte [esi + 6]
shl eax, 8
mov dword [esp + 0x68], edx
movzx edx, byte [esi + 7]
or eax, edx
movzx edx, byte [esi + 9]
mov dword [esp + 0x78], eax
movzx eax, byte [esi + 8]
shl eax, 8
or eax, edx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov edx, dword [ebp + 0xa8]
sar eax, 1
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x80], eax
mov dword [esp + 0x74], edx
mov edx, dword [esi + 2]
lea eax, [esp + 0x50]
push eax
mov dword [esp + 0x54], 2
mov dword [esp + 0x88], edx
call ecx
add esp, 4
test eax, eax
jg case.0x486851.14
js 0x4869e5
add esi, 0xa
mov dword [esp + 0x140], esi
jmp 0x483173
movzx edi, byte [esi + 1]
movzx ecx, byte [esi + 2]
mov eax, dword [ebp + 0x70]
shl edi, 8
or edi, ecx
add edi, eax
cmp edi, eax
jne 0x483afb
xor ecx, ecx
jmp 0x483b08
movzx ecx, byte [edi + 3]
movzx edx, byte [edi + 4]
shl ecx, 8
or ecx, edx
mov edx, dword [ebp + 0xa4]
mov eax, edx
test eax, eax
je 0x483b28
cmp ecx, dword [eax + 4]
jne 0x483b22
cmp ebx, dword [eax + 0x10]
je 0x4861a0
mov eax, dword [eax]
test eax, eax
jne 0x483b14
mov dword [esp + 0x38], ecx
mov ecx, dword [ebp + 0x10]
add esi, 3
lea eax, [esp + 0x34]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x34], edx
mov dword [ebp + 0xa4], eax
mov dword [esp + 0x140], esi
mov dword [esp + 0x40], ecx
cmp ecx, 0x1e
jg 0x483b61
lea eax, [esp + 0xc0]
mov dword [esp + 0x3c], eax
jmp 0x483b7f
add ecx, ecx
add ecx, ecx
push ecx
call dword [0x4aa348]
add esp, 4
mov dword [esp + 0x3c], eax
test eax, eax
je 0x4861b0
mov ecx, dword [esp + 0x40]
lea edx, [ecx*4]
mov ecx, dword [ebp + 0xc]
push edx
push ecx
push eax
call fcn.00490450
add esp, 0xc
cmp byte [edi], 0x82
sbb eax, eax
inc eax
mov dword [esp + 0x14], eax
mov edi, edi
cmp dword [esp + 0x14], 0
je 0x483bb1
mov dword [ebp + 0x98], 2
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
movzx eax, byte [edi]
push ebp
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push edx
add ecx, edi
push ecx
push ebx
call fcn.004830c0
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
add esp, 0x1c
mov dword [esp + 0x2c], eax
lea eax, [edx*4]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
call fcn.00490450
mov ecx, dword [esp + 0x40]
add esp, 0xc
cmp dword [esp + 0x2c], 1
mov dword [ebp + 0xa4], ecx
je 0x483c83
mov eax, dword [esp + 0x2c]
cmp eax, 0xfffffc19
je 0x483c83
test eax, eax
je 0x483c35
cmp eax, 0xfffffc20
jne 0x4861c0
lea eax, [esp + 0x34]
mov dword [ebp + 0xa4], eax
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
add edi, edx
cmp byte [edi], 0x71
je 0x483ba0
mov eax, dword [esp + 0x3c]
mov dword [ebp + 0xa4], ecx
lea ecx, [esp + 0xc0]
cmp eax, ecx
je 0x483c76
push eax
call dword [0x4aa34c]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x3c]
lea ecx, [esp + 0xc0]
cmp eax, ecx
je 0x483c9c
push eax
call dword [0x4aa34c]
add esp, 4
mov edx, dword [ebp + 0x7c]
mov ebx, dword [ebp + 0x80]
mov dword [esp + 0x144], edx
jmp 0x483173
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
cmp byte [esi], 0x71
je case.0x483198.113
mov dword [esp + 0x140], esi
jmp 0x483173
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
push ebp
push ecx
push edx
inc esi
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
jmp 0x483d10
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
cmp byte [esi], 0x71
je 0x483d10
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
inc esi
mov eax, esi
jmp 0x483d40
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x71
je 0x483d40
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
inc edx
push edx
mov edx, dword [esp + 0x14c]
push ecx
mov ecx, dword [esp + 0x14c]
push ebp
push edx
push ecx
add eax, 3
push eax
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov dword [esp + 0x140], esi
jmp 0x483173
inc esi
jmp 0x483da0
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
add esi, edx
cmp byte [esi], 0x71
je 0x483da0
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
movzx eax, byte [esi + 1]
inc esi
mov dword [esp + 0x140], esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], 1
cmp eax, 0x80
je 0x483ded
cmp eax, 0x85
jne 0x483f80
movzx eax, byte [esi + 3]
movzx ecx, byte [esi + 4]
shl eax, 8
or eax, ecx
mov dword [esp + 0x28], eax
add eax, eax
cmp eax, dword [ebp + 0x14]
jge case.0x483198.126
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x28]
add ecx, ecx
mov dword [esp + 0x20], edx
mov edx, dword [eax + ecx*4]
mov ecx, dword [eax + ecx*4 + 4]
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0x10]
mov edi, esi
sub edi, dword [ebp + 0x70]
sub edx, dword [esp + 0x28]
mov dword [esp + 0x30], ecx
mov eax, dword [eax + edx*4]
mov ecx, dword [ebp + 0x90]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], ecx
mov eax, dword [ebp + 0x10]
sub eax, dword [esp + 0x28]
mov ecx, dword [ebp + 0xc]
mov edx, ebx
sub edx, dword [ebp + 0x74]
cmp dword [esp + 0x1c], 0x82
mov dword [ecx + eax*4], edx
jl 0x483e68
mov dword [ebp + 0x98], 2
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
movzx eax, byte [esi]
push ebp
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push edx
add ecx, esi
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x483ed6
mov edx, dword [ebp + 0x8c]
mov esi, dword [ebp + 0x70]
mov eax, dword [ebp + 0x90]
mov ebx, dword [ebp + 0x80]
mov dword [esp + 0x148], edx
add esi, edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], 1
jmp 0x483e42
cmp eax, 0xfffffc20
jne 0x483eff
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add ecx, esi
cmp dword [ebp + 0x7c], ecx
jae 0x4869e5
cmp byte [esi], 0x71
je 0x483f07
cmp byte [ecx], 0x71
jmp 0x483f01
test eax, eax
jne 0x4869e5
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x90], eax
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add esi, ecx
cmp byte [esi], 0x71
je 0x483e42
cmp dword [esp + 0x20], 0
jne 0x483f5b
mov ecx, dword [esp + 0x28]
mov edx, dword [ebp + 0xc]
mov edi, dword [esp + 0x18]
lea eax, [ecx + ecx]
mov dword [edx + eax*4], edi
mov edx, dword [ebp + 0xc]
mov edi, dword [esp + 0x30]
mov dword [edx + eax*4 + 4], edi
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x2c]
sub eax, ecx
mov ecx, dword [ebp + 0xc]
mov dword [ecx + eax*4], edx
cmp dword [esp + 0x24], 0
jne 0x483f6d
cmp dword [esp + 0x20], 0
je case.0x486851.14
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
mov dword [esp + 0x24], edx
sub esi, dword [ebp + 0x70]
mov edi, dword [esp + 0x148]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x140]
mov dword [esp + 0x20], edx
cmp dword [esp + 0x1c], 0x82
jl 0x483fad
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x144]
inc eax
push eax
movzx eax, byte [esi]
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push ebp
push edi
push edx
add ecx, esi
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x484009
mov edi, dword [ebp + 0x8c]
mov esi, dword [ebp + 0x70]
mov ebx, dword [ebp + 0x80]
add esi, dword [esp + 0x2c]
mov dword [esp + 0x148], edi
mov dword [esp + 0x20], 1
jmp 0x483f99
cmp eax, 0xfffffc20
jne 0x484032
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add ecx, esi
cmp dword [ebp + 0x7c], ecx
jae 0x4869e5
cmp byte [esi], 0x71
je 0x48403a
cmp byte [ecx], 0x71
jmp 0x484034
test eax, eax
jne 0x4869e5
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
cmp byte [esi], 0x71
je 0x483f99
cmp dword [esp + 0x20], 0
jne 0x484064
cmp dword [esp + 0x24], 0
je case.0x486851.14
add esi, 3
mov dword [esp + 0x140], esi
jmp 0x483173
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
mov dword [esp + 0x24], ecx
cmp al, 0x82
jae 0x48409c
cmp al, 0x7b
je 0x48409c
mov dword [esp + 0x20], 0
jmp 0x4840b3
mov edx, dword [esp + 0x150]
mov edi, dword [edx + 4]
mov edx, dword [edx]
mov dword [esp + 0x20], edi
mov dword [esp + 0x150], edx
cmp al, 0x77
jb 0x4840bf
cmp al, 0x7a
jbe 0x4861ec
cmp al, 0x7c
je 0x4861ec
cmp al, 0x7f
je 0x4840db
cmp al, 0x84
je 0x4840db
cmp al, 0x80
je 0x4840db
cmp al, 0x85
jne 0x484171
movzx edx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
mov ecx, dword [ebp + 0xa4]
shl edx, 8
or edx, eax
lea eax, [edx + edx]
mov dword [esp + 0x28], eax
test ecx, ecx
je 0x484102
cmp dword [ecx + 4], edx
je 0x486219
mov edi, dword [esp + 0x148]
mov dword [ebp + 0x90], edx
cmp eax, dword [ebp + 0x14]
jl 0x48411d
mov dword [ebp + 0x3c], 1
jmp 0x484178
cmp eax, edi
jle 0x484145
mov ecx, dword [ebp + 0xc]
lea edi, [ecx + edi*4]
lea ecx, [ecx + eax*4]
cmp edi, ecx
jae 0x48413e
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x148]
mov ecx, dword [ebp + 0x10]
sub ecx, edx
mov edx, ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + edx*4]
mov dword [ecx + eax*4], edx
mov edx, dword [ebp + 0xc]
mov ecx, ebx
sub ecx, dword [ebp + 0x74]
mov dword [edx + eax*4 + 4], ecx
cmp edi, eax
jg 0x484178
lea edi, [eax + 2]
mov dword [esp + 0x148], edi
jmp 0x484178
mov edi, dword [esp + 0x148]
cmp byte [esi], 0x72
je 0x484187
cmp ebx, dword [esp + 0x20]
jne 0x485b0a
mov eax, dword [esp + 0x24]
add esi, 3
cmp byte [eax], 0x7b
je 0x4862e6
mov dword [esp + 0x140], esi
jmp 0x483173
cmp dword [ebp + 0x40], edx
je case.0x483198.1
cmp ebx, dword [ebp + 0x74]
je case.0x486851.14
cmp ebx, dword [ebp + 0x74]
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp dword [ebp + 0x40], edx
je 0x4841d5
cmp ebx, dword [ebp + 0x74]
je case.0x486851.14
mov ecx, dword [ebp + 0x74]
cmp ebx, ecx
je 0x48424d
cmp ebx, dword [ebp + 0x78]
je case.0x486851.14
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x484220
cmp ebx, ecx
jbe case.0x486851.14
mov esi, ecx
lea edx, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487dd0
add esp, 4
test eax, eax
je case.0x486851.14
mov esi, dword [esp + 0x140]
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
mov eax, dword [ebp + 0x1c]
add ecx, eax
cmp ebx, ecx
jb case.0x486851.14
mov edi, ebx
sub edi, eax
mov cl, byte [edi]
cmp cl, byte [ebp + 0x2c]
jne case.0x486851.14
cmp eax, 1
je 0x48424d
mov dl, byte [edi + 1]
cmp dl, byte [ebp + 0x2d]
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ebx, eax
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
inc esi
mov dword [esp + 0x144], ebx
mov dword [esp + 0x140], esi
jmp 0x483173
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x4842fc
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4842c6
push 0
lea esi, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
je case.0x486851.14
mov esi, dword [esp + 0x140]
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
mov eax, dword [ebp + 0x1c]
sub edx, eax
cmp ebx, edx
ja case.0x486851.14
mov cl, byte [ebx]
cmp cl, byte [ebp + 0x2c]
jne case.0x486851.14
cmp eax, 1
je 0x484328
mov dl, byte [ebx + 1]
cmp dl, byte [ebp + 0x2d]
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp dword [ebp + 0x44], 0
jne case.0x486851.14
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x484328
cmp ebx, dword [ebp + 0x84]
jbe 0x484328
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp dword [ebp + 0x44], edx
jne case.0x486851.14
cmp dword [ebp + 0x54], edx
je case.0x483198.23
cmp ebx, dword [ebp + 0x78]
jb case.0x486851.14
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x484328
cmp ebx, dword [ebp + 0x84]
jbe 0x484328
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x4843e1
mov eax, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test eax, eax
je 0x4843ac
push 0
push eax
mov esi, edi
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
je case.0x486851.14
mov esi, dword [esp + 0x140]
jmp 0x4843d4
mov eax, dword [edi]
sub edx, eax
cmp ebx, edx
ja case.0x486851.14
mov cl, byte [ebx]
cmp cl, byte [ebp + 0x2c]
jne case.0x486851.14
cmp eax, 1
je 0x4843d4
mov dl, byte [ebx + 1]
cmp dl, byte [ebp + 0x2d]
jne case.0x486851.14
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
cmp ebx, eax
jne case.0x486851.14
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x484328
cmp ebx, dword [ebp + 0x84]
jbe 0x484328
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x74]
jne 0x484421
xor edi, edi
jmp 0x484443
cmp ebx, dword [ebp + 0x84]
ja 0x484432
lea ecx, [ebx - 1]
mov dword [ebp + 0x84], ecx
movzx eax, byte [ebx - 1]
mov edx, dword [ebp + 0x38]
movzx edi, byte [eax + edx]
shr edi, 4
and edi, 1
cmp ebx, dword [ebp + 0x78]
jb 0x48446e
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48446a
cmp ebx, dword [ebp + 0x84]
jbe 0x48446a
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
xor eax, eax
jmp 0x48447e
movzx edx, byte [ebx]
mov ecx, dword [ebp + 0x38]
movzx eax, byte [edx + ecx]
shr eax, 4
and eax, 1
mov cl, byte [esi]
inc esi
mov dword [esp + 0x140], esi
cmp cl, 5
jne 0x484498
xor edx, edx
cmp eax, edi
sete dl
mov eax, edx
jmp 0x4844a1
xor ecx, ecx
cmp eax, edi
setne cl
mov eax, ecx
test eax, eax
je 0x483173
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x78]
test eax, eax
je 0x4844e5
cmp ebx, edx
jae case.0x483198.13
push 0
lea esi, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
jne case.0x486851.14
mov esi, dword [esp + 0x140]
jmp case.0x483198.13
mov eax, dword [ebp + 0x1c]
sub edx, eax
cmp ebx, edx
ja case.0x483198.13
mov cl, byte [ebx]
cmp cl, byte [ebp + 0x2c]
jne case.0x483198.13
cmp eax, 1
je case.0x486851.14
mov dl, byte [ebx + 1]
cmp dl, byte [ebp + 0x2d]
je case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
inc ebx
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0x38]
inc ebx
test byte [eax + ecx], 4
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov edx, dword [ebp + 0x38]
inc ebx
test byte [eax + edx], 4
je case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0x38]
inc ebx
test byte [eax + ecx], 1
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov edx, dword [ebp + 0x38]
inc ebx
test byte [eax + edx], 1
je case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0x38]
inc ebx
test byte [eax + ecx], 0x10
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov edx, dword [ebp + 0x38]
inc ebx
test byte [eax + edx], 0x10
je case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xd
ja 0x484648
je 0x484631
cmp eax, 0xa
je 0x48466e
jbe case.0x486851.14
cmp eax, 0xc
jmp 0x48465f
cmp ebx, ecx
jae 0x48466e
cmp byte [ebx], 0xa
jne 0x48466e
inc ebx
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp eax, 0x85
je 0x484665
cmp eax, 0x2027
jbe case.0x486851.14
cmp eax, 0x2029
ja case.0x486851.14
cmp dword [ebp + 0x64], edx
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0x180e
ja 0x4846b7
je case.0x486851.14
cmp eax, 0xa0
ja 0x4846b0
je case.0x486851.14
cmp eax, 9
je case.0x486851.14
cmp eax, 0x20
jmp 0x4846e2
cmp eax, 0x1680
jmp 0x4846e2
cmp eax, 0x205f
ja 0x4846dd
je case.0x486851.14
cmp eax, 0x2000
jb 0x4846e8
cmp eax, 0x200a
jbe case.0x486851.14
cmp eax, 0x202f
jmp 0x4846e2
cmp eax, 0x3000
je case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0x180e
ja 0x484725
je 0x484752
cmp eax, 0xa0
ja 0x48471e
je 0x484752
cmp eax, 9
je 0x484752
cmp eax, 0x20
jmp 0x48474c
cmp eax, 0x1680
jmp 0x48474c
cmp eax, 0x205f
ja 0x484747
je 0x484752
cmp eax, 0x2000
jb case.0x486851.14
cmp eax, 0x200a
jbe 0x484752
cmp eax, 0x202f
jmp 0x48474c
cmp eax, 0x3000
jne case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0x85
ja 0x484783
je case.0x486851.14
cmp eax, 0xa
jb 0x484795
cmp eax, 0xd
jmp 0x48478f
cmp eax, 0x2028
jb 0x484795
cmp eax, 0x2029
jbe case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0x85
ja 0x4847c6
je 0x4847dc
cmp eax, 0xa
jb case.0x486851.14
cmp eax, 0xd
jmp 0x4847d6
cmp eax, 0x2028
jb case.0x486851.14
cmp eax, 0x2029
ja case.0x486851.14
inc esi
mov dword [esp + 0x140], esi
jmp 0x483173
movzx ecx, byte [esi + 2]
xor eax, eax
cmp dword [esp + 0x1c], 0x6e
sete al
add esi, 3
mov dword [esp + 0x140], esi
mov dword [esp + 0x24], eax
movzx eax, byte [esi - 2]
shl eax, 8
or eax, ecx
add eax, eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x148]
jge 0x484830
mov edx, dword [ebp + 0xc]
lea ecx, [edx + eax*4]
mov edx, dword [ecx]
test edx, edx
js 0x484830
mov edi, dword [ecx + 4]
sub edi, edx
jmp 0x48483a
mov edi, dword [ebp + 0x4c]
neg edi
sbb edi, edi
neg edi
dec edi
movzx ecx, byte [esi]
lea edx, [ecx - 0x62]
mov dword [esp + 0x20], edi
cmp edx, 7
ja case.default.0x484854
movzx edx, byte [edx + 0x486bcc]
jmp dword [edx*4 + 0x486bc4]
lea eax, [ecx - 0x62]
movsx edi, byte [eax + 0x4a1da8]
mov ecx, eax
movsx eax, byte [eax + 0x4a1db0]
inc esi
and ecx, 1
mov dword [esp + 0x140], esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4848d6
mov eax, SysReAllocString
mov dword [esp + 0x1c], eax
jmp 0x4848d6
movzx edi, byte [esi + 1]
movzx ecx, byte [esi + 2]
movzx edx, byte [esi + 4]
xor eax, eax
cmp byte [esi], 0x69
sete al
shl edi, 8
or edi, ecx
mov dword [esp + 0x14], eax
movzx eax, byte [esi + 3]
shl eax, 8
or eax, edx
mov dword [esp + 0x1c], eax
jne 0x4848c4
mov dword [esp + 0x1c], CreateStatusWindowA
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
add esi, 5
mov dword [esp + 0x140], esi
mov edx, dword [esp + 0x20]
test edx, edx
je 0x483173
jns 0x4848ec
test edi, edi
je 0x483173
mov dword [esp + 0x18], 1
cmp edi, 1
jl 0x484939
lea esp, [esp]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push eax
push ecx
mov ecx, ebp
mov eax, ebx
call fcn.00483030
add esp, 8
test eax, eax
js 0x486415
add ebx, eax
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, edi
jle 0x484900
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
cmp edi, eax
je 0x483173
test ecx, ecx
je 0x486367
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
push ebp
push ecx
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
cmp edi, dword [esp + 0x1c]
jge case.0x486851.14
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push eax
push ecx
mov ecx, ebp
mov eax, ebx
call fcn.00483030
add esp, 8
test eax, eax
js 0x486415
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
add ebx, eax
mov eax, dword [esp + 0x154]
push eax
push ebp
push ecx
push edx
push esi
push ebx
inc edi
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x48497d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x24]
push edx
push eax
mov ecx, ebp
mov edx, edi
mov eax, ebx
call fcn.00483030
add esp, 8
test eax, eax
js 0x486415
add ebx, eax
jmp 0x483173
lea eax, [esi + 1]
add esi, 0x21
mov dword [esp + 0x28], eax
mov al, byte [esi]
movzx ecx, al
lea edi, [ecx - 0x62]
mov dword [esp + 0x140], esi
cmp edi, 7
ja case.default.0x484a2f
movzx edi, byte [edi + 0x486bdc]
jmp dword [edi*4 + 0x486bd4]
movsx edi, byte [ecx + 0x4a1d4e]
movsx eax, byte [ecx + 0x4a1d46]
add ecx, 0xffffff9e
mov edx, ecx
inc esi
and edx, 1
mov dword [esp + 0x140], esi
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edi
test edi, edi
jne 0x484ab2
mov edi, SysReAllocString
jmp 0x484aae
movzx ecx, byte [esi + 2]
movzx edi, byte [esi + 3]
xor edx, edx
cmp al, 0x69
movzx eax, byte [esi + 1]
sete dl
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 4]
shl edi, 8
or edi, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], edi
jne 0x484a9b
mov edi, SysReAllocString
mov dword [esp + 0x1c], edi
add esi, 5
mov dword [esp + 0x140], esi
jmp 0x484ab2
mov edi, 1
mov eax, edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], 1
cmp eax, 1
jl 0x484aff
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edi, byte [ebx]
mov ecx, edi
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x28]
shr edi, 3
mov cl, byte [edi + ecx]
inc ebx
test cl, dl
je case.0x486851.14
mov ecx, dword [esp + 0x18]
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, eax
jle 0x484abf
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
cmp eax, edi
je 0x483173
test edx, edx
je 0x486431
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x154]
push eax
push ebp
push ecx
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
jmp 0x484b50
cmp dword [esp + 0x18], edi
jge case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x28]
shr eax, 3
mov al, byte [eax + ecx]
inc ebx
test al, dl
je case.0x486851.14
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x148]
inc dword [esp + 0x18]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
push edx
push ebp
push eax
push ecx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x484b50
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [ebp + 0x78]
sub edx, ebx
cmp edx, 1
jl 0x48632d
mov al, byte [ebx]
inc ebx
cmp byte [esi + 1], al
jne case.0x486851.14
add esi, 2
mov dword [esp + 0x140], esi
jmp 0x483173
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [esi + 1]
mov eax, dword [ebp + 0x30]
movzx edx, byte [ebx]
mov cl, byte [ecx + eax]
cmp cl, byte [edx + eax]
jne case.0x486851.14
inc ebx
add esi, 2
mov dword [esp + 0x140], esi
jmp 0x483173
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
mov eax, edi
add esi, 3
jmp 0x484ccc
mov dword [esp + 0x24], 1
movzx edi, byte [esi + 1]
movzx edx, byte [esi + 2]
shl edi, 8
xor eax, eax
or edi, edx
cmp cl, 0x28
je 0x484c5f
cmp cl, 0x35
je 0x484c5f
xor edx, edx
mov dword [esp + 0x14], edx
add esi, 3
jmp 0x484ccc
mov edx, 1
mov dword [esp + 0x14], edx
add esi, 3
jmp 0x484ccc
xor eax, eax
mov dword [esp + 0x24], 1
inc esi
jmp 0x484cc7
mov eax, 1
mov dword [esp + 0x24], eax
add esi, eax
jmp 0x484cc7
mov edi, 1
xor eax, eax
mov dword [esp + 0x24], edi
add esi, edi
jmp 0x484ccc
mov edi, dword [esp + 0x1c]
xor eax, eax
cmp edi, 0x2e
setge al
inc esi
dec eax
and eax, 0xfffffff3
add eax, 0x2e
sub edi, eax
movsx eax, byte [edi + 0x4a1da8]
mov edx, edi
movsx edi, byte [edi + 0x4a1db0]
and edx, 1
mov dword [esp + 0x14], edx
test edi, edi
jne 0x484ccc
mov edi, SysReAllocString
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0x2e
mov dword [esp + 0x20], ecx
mov dword [esp + 0x140], esi
jl 0x484de3
mov edx, dword [ebp + 0x34]
movzx edx, byte [edx + ecx]
mov dword [esp + 0x28], edx
cmp eax, 1
jl 0x484d2a
mov dword [esp + 0x2c], 1
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edx, byte [ebx]
cmp ecx, edx
je 0x484d1c
cmp dword [esp + 0x28], edx
jne case.0x486851.14
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
inc edx
inc ebx
mov dword [esp + 0x2c], edx
cmp edx, eax
jle 0x484cfe
cmp eax, edi
je 0x483173
cmp dword [esp + 0x14], 0
jne 0x4864da
mov dword [esp + 0x14], ebx
cmp eax, edi
jge 0x484d83
cmp ebx, dword [ebp + 0x78]
jae 0x484d61
movzx ecx, byte [ebx]
cmp dword [esp + 0x20], ecx
je 0x484d59
cmp dword [esp + 0x28], ecx
jne 0x484d83
inc eax
inc ebx
cmp eax, edi
jl 0x484d45
jmp 0x484d83
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x484d83
cmp ebx, dword [ebp + 0x84]
jbe 0x484d83
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp dword [esp + 0x24], 0
jne 0x483173
cmp ebx, dword [esp + 0x14]
jb 0x484dd6
mov edi, dword [esp + 0x148]
mov esi, dword [esp + 0x140]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x144]
inc ecx
push ecx
push edx
push ebp
push edi
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
dec ebx
test eax, eax
jne 0x4869e5
cmp ebx, dword [esp + 0x14]
jae 0x484da2
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov dword [esp + 0x18], 1
cmp eax, 1
jl 0x484e16
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edx, byte [ebx]
inc ebx
cmp ecx, edx
jne case.0x486851.14
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x18], edx
cmp edx, eax
jle 0x484df0
mov edx, dword [esp + 0x14]
cmp eax, edi
je 0x483173
test edx, edx
jne 0x486578
mov dword [esp + 0x14], ebx
cmp eax, edi
jge 0x484e68
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x484e46
movzx edx, byte [ebx]
cmp dword [esp + 0x20], edx
jne 0x484e68
inc eax
inc ebx
cmp eax, edi
jl 0x484e31
jmp 0x484e68
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x484e68
cmp ebx, dword [ebp + 0x84]
jbe 0x484e68
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp dword [esp + 0x24], 0
jne 0x483173
cmp ebx, dword [esp + 0x14]
jb 0x484ebb
mov esi, dword [esp + 0x140]
mov edi, dword [esp + 0x148]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x144]
inc ecx
push ecx
push edx
push ebp
push edi
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
dec ebx
test eax, eax
jne 0x4869e5
cmp ebx, dword [esp + 0x14]
jae 0x484e87
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp dword [esp + 0x1c], 0x20
jne 0x484f0e
movzx ecx, byte [esi + 1]
add esi, 2
mov dword [esp + 0x140], esi
cmp ecx, eax
je case.0x486851.14
mov edx, dword [ebp + 0x34]
movzx ecx, byte [edx + ecx]
cmp ecx, eax
jne 0x483173
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx edx, byte [esi + 1]
add esi, 2
mov dword [esp + 0x140], esi
cmp edx, eax
jne 0x483173
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
mov eax, edi
add esi, 3
jmp 0x484ff8
movzx edi, byte [esi + 1]
movzx edx, byte [esi + 2]
shl edi, 8
xor eax, eax
or edi, edx
cmp cl, 0x42
je 0x484f6f
cmp cl, 0x4f
je 0x484f6f
xor edx, edx
mov dword [esp + 0x14], edx
add esi, 3
jmp 0x484ff8
mov edx, 1
mov dword [esp + 0x14], edx
add esi, 3
jmp 0x484ff8
xor eax, eax
mov dword [esp + 0x24], 1
inc esi
jmp 0x484ff3
mov eax, 1
mov dword [esp + 0x24], eax
add esi, eax
jmp 0x484ff3
mov edi, 1
xor eax, eax
mov dword [esp + 0x24], edi
add esi, edi
jmp 0x484ff8
movzx edi, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl edi, 8
xor eax, eax
or edi, ecx
mov dword [esp + 0x24], 1
add esi, 3
jmp 0x484ff8
mov edi, dword [esp + 0x1c]
xor edx, edx
cmp edi, 0x48
setl dl
inc esi
dec edx
and edx, 0xd
add edx, 0x3b
sub edi, edx
movsx eax, byte [edi + 0x4a1da8]
mov edx, edi
movsx edi, byte [edi + 0x4a1db0]
and edx, 1
mov dword [esp + 0x14], edx
test edi, edi
jne 0x484ff8
mov edi, SysReAllocString
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0x48
mov dword [esp + 0x20], ecx
mov dword [esp + 0x140], esi
mov dword [esp + 0x18], 1
jl 0x48511b
mov edx, dword [ebp + 0x34]
movzx edx, byte [edx + ecx]
mov dword [esp + 0x28], edx
cmp eax, 1
jl 0x485060
jmp 0x485034
mov ecx, dword [esp + 0x20]
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edx, byte [ebx]
cmp ecx, edx
je case.0x486851.14
cmp dword [esp + 0x28], edx
je case.0x486851.14
mov ecx, dword [esp + 0x18]
inc ecx
inc ebx
mov dword [esp + 0x18], ecx
cmp ecx, eax
jle 0x485030
cmp eax, edi
je 0x483173
cmp dword [esp + 0x14], 0
jne 0x486610
mov dword [esp + 0x14], ebx
mov ecx, eax
cmp eax, edi
jge 0x4850bb
cmp ebx, dword [ebp + 0x78]
jae 0x485099
movzx eax, byte [ebx]
cmp dword [esp + 0x20], eax
je 0x4850bb
cmp dword [esp + 0x28], eax
je 0x4850bb
inc ecx
inc ebx
cmp ecx, edi
jl 0x48507d
jmp 0x4850bb
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4850bb
cmp ebx, dword [ebp + 0x84]
jbe 0x4850bb
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp dword [esp + 0x24], 0
jne 0x483173
cmp ebx, dword [esp + 0x14]
jb 0x48510e
mov esi, dword [esp + 0x140]
mov edi, dword [esp + 0x148]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x144]
inc eax
push eax
push ecx
push ebp
push edi
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
dec ebx
cmp ebx, dword [esp + 0x14]
jae 0x4850da
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, 1
jl 0x485146
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edx, byte [ebx]
inc ebx
cmp ecx, edx
je case.0x486851.14
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x18], edx
cmp edx, eax
jle 0x485120
mov edx, dword [esp + 0x14]
cmp eax, edi
je 0x483173
test edx, edx
jne 0x4866ba
mov dword [esp + 0x14], ebx
cmp eax, edi
jge 0x485198
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485176
movzx edx, byte [ebx]
cmp dword [esp + 0x20], edx
je 0x485198
inc eax
inc ebx
cmp eax, edi
jl 0x485161
jmp 0x485198
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x485198
cmp ebx, dword [ebp + 0x84]
jbe 0x485198
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp dword [esp + 0x24], 0
jne 0x483173
cmp ebx, dword [esp + 0x14]
jb 0x4851eb
mov esi, dword [esp + 0x140]
mov edi, dword [esp + 0x148]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x144]
inc eax
push eax
push ecx
push ebp
push edi
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
dec ebx
cmp ebx, dword [esp + 0x14]
jae 0x4851b7
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], 1
add esi, 3
jmp 0x4852b7
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
mov dword [esp + 0x1c], eax
xor eax, eax
xor edi, edi
cmp cl, 0x5c
sete al
add esi, 3
mov dword [esp + 0x14], eax
jmp 0x4852b7
xor edi, edi
mov dword [esp + 0x24], 1
inc esi
jmp 0x4852af
mov edi, 1
mov dword [esp + 0x24], edi
add esi, edi
jmp 0x4852af
mov eax, 1
xor edi, edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], eax
add esi, eax
jmp 0x4852b7
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
xor edi, edi
mov dword [esp + 0x24], 1
mov dword [esp + 0x1c], eax
add esi, 3
jmp 0x4852b7
mov eax, dword [esp + 0x1c]
movsx edi, byte [eax + 0x4a1d53]
lea ecx, [eax - 0x55]
movsx eax, byte [eax + 0x4a1d5b]
and ecx, 1
inc esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4852b7
mov dword [esp + 0x1c], CreateStatusWindowA
movzx eax, byte [esi]
mov ecx, 1
add esi, ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x140], esi
test edi, edi
jle 0x4855b9
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x486837.15
jmp dword [eax*4 + 0x486be4]
mov dword [esp + 0x18], ecx
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x485326
push 0
lea esi, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
jne case.0x486851.14
mov esi, dword [esp + 0x140]
jmp 0x48534b
mov eax, dword [ebp + 0x1c]
sub edx, eax
cmp ebx, edx
ja 0x48534b
mov dl, byte [ebx]
cmp dl, byte [ebp + 0x2c]
jne 0x48534b
cmp eax, 1
je case.0x486851.14
mov al, byte [ebx + 1]
cmp al, byte [ebp + 0x2d]
je case.0x486851.14
mov eax, dword [esp + 0x18]
inc eax
inc ebx
mov dword [esp + 0x18], eax
cmp eax, edi
jle 0x4852f3
jmp 0x4855b9
mov edx, dword [ebp + 0x78]
sub edx, edi
cmp ebx, edx
ja 0x486752
add ebx, edi
jmp 0x4855b9
mov eax, dword [ebp + 0x78]
sub eax, edi
cmp ebx, eax
ja 0x486752
add ebx, edi
jmp 0x4855b9
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
movzx eax, byte [ebx]
sub eax, 0xa
inc ebx
cmp eax, 0x7b
ja case.0x486851.14
movzx eax, byte [eax + 0x486c34]
jmp dword [eax*4 + 0x486c24]
cmp ebx, edx
jae case.0x4853b0.10
cmp byte [ebx], 0xa
jne case.0x4853b0.10
inc ebx
jmp case.0x4853b0.10
cmp dword [ebp + 0x64], 0
jne case.0x486851.14
inc ecx
cmp ecx, edi
jle 0x485391
jmp 0x4855b9
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 9
je case.0x486851.14
cmp eax, 0x20
je case.0x486851.14
cmp eax, 0xa0
je case.0x486851.14
inc ecx
cmp ecx, edi
jle 0x4853e2
jmp 0x4855b9
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 9
je 0x485441
cmp eax, 0x20
je 0x485441
cmp eax, 0xa0
jne case.0x486851.14
inc ecx
cmp ecx, edi
jle 0x485420
jmp 0x4855b9
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jl 0x48547b
cmp eax, 0xd
jle case.0x486851.14
cmp eax, 0x85
je case.0x486851.14
inc ecx
cmp ecx, edi
jle 0x485456
jmp 0x4855b9
cmp edi, ecx
jl 0x4855b9
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jl case.0x486851.14
cmp eax, 0xd
jle 0x4854b5
cmp eax, 0x85
jne case.0x486851.14
inc ecx
cmp ecx, edi
jle 0x485490
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 4
jne case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x4854c9
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 4
je case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x4854f7
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 1
jne case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x485525
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 1
je case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x48554c
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 0x10
jne case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x485573
jmp 0x4855b9
mov eax, ecx
cmp edi, ecx
jl 0x4855b9
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
mov edx, dword [ebp + 0x38]
test byte [ecx + edx], 0x10
je case.0x486851.14
inc eax
inc ebx
cmp eax, edi
jle 0x48559a
cmp edi, dword [esp + 0x1c]
je 0x483173
cmp dword [esp + 0x14], 0
jne 0x486786
mov eax, dword [esp + 0x20]
add eax, 0xfffffffa
mov dword [esp + 0x14], ebx
cmp eax, 0xf
ja case.0x486837.15
jmp dword [eax*4 + 0x486cb0]
cmp edi, dword [esp + 0x1c]
jge 0x485673
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x485651
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x485617
push 0
lea esi, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
jne 0x485673
jmp 0x485634
mov eax, dword [ebp + 0x1c]
sub edx, eax
cmp ebx, edx
ja 0x485634
mov cl, byte [ebx]
cmp cl, byte [ebp + 0x2c]
jne 0x485634
cmp eax, 1
je 0x485673
mov dl, byte [ebx + 1]
cmp dl, byte [ebp + 0x2d]
je 0x485673
inc edi
inc ebx
cmp edi, dword [esp + 0x1c]
jl 0x4855f3
jmp 0x485673
mov ecx, dword [ebp + 0x78]
mov eax, dword [esp + 0x1c]
mov edx, ecx
sub eax, edi
sub edx, ebx
cmp eax, edx
jbe 0x48568a
mov ebx, ecx
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x485673
cmp ebx, dword [ebp + 0x84]
jbe 0x485673
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp dword [esp + 0x24], 0
je 0x486976
mov esi, dword [esp + 0x140]
jmp 0x483173
add ebx, eax
jmp 0x485673
mov edx, dword [esp + 0x1c]
cmp edi, edx
jge 0x485673
mov ecx, dword [ebp + 0x78]
lea esp, [esp]
cmp ebx, ecx
jae 0x485651
movzx eax, byte [ebx]
cmp eax, 0xd
jne 0x4856b8
inc ebx
cmp ebx, ecx
jae 0x485673
cmp byte [ebx], 0xa
jne 0x4856d5
jmp 0x4856d4
cmp eax, 0xa
je 0x4856d4
cmp dword [ebp + 0x64], 0
jne 0x485673
cmp eax, 0xb
je 0x4856d4
cmp eax, 0xc
je 0x4856d4
cmp eax, 0x85
jne 0x485673
inc ebx
inc edi
cmp edi, edx
jl 0x4856a0
jmp 0x485673
mov ecx, dword [esp + 0x1c]
cmp edi, ecx
jge 0x485673
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x485651
movzx eax, byte [ebx]
cmp eax, 9
je 0x485673
cmp eax, 0x20
je 0x485673
cmp eax, 0xa0
je 0x485673
inc edi
inc ebx
cmp edi, ecx
jl 0x4856e7
jmp 0x485673
mov ecx, dword [esp + 0x1c]
cmp edi, ecx
jge 0x485673
mov edx, dword [ebp + 0x78]
lea esp, [esp]
cmp ebx, edx
jae 0x485651
movzx eax, byte [ebx]
cmp eax, 9
je 0x485750
cmp eax, 0x20
je 0x485750
cmp eax, 0xa0
jne 0x485673
inc edi
inc ebx
cmp edi, ecx
jl 0x485730
jmp 0x485673
mov ecx, dword [esp + 0x1c]
cmp edi, ecx
jge 0x485673
mov edx, dword [ebp + 0x78]
lea ebx, [ebx]
cmp ebx, edx
jae 0x485651
movzx eax, byte [ebx]
cmp eax, 0xa
je 0x485673
cmp eax, 0xb
je 0x485673
cmp eax, 0xc
je 0x485673
cmp eax, 0xd
je 0x485673
cmp eax, 0x85
je 0x485673
inc edi
inc ebx
cmp edi, ecx
jl 0x485770
jmp 0x485673
mov ecx, dword [esp + 0x1c]
cmp edi, ecx
jge 0x485673
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x485651
movzx eax, byte [ebx]
cmp eax, 0xa
je 0x4857ee
cmp eax, 0xb
je 0x4857ee
cmp eax, 0xc
je 0x4857ee
cmp eax, 0xd
je 0x4857ee
cmp eax, 0x85
jne 0x485673
inc edi
inc ebx
cmp edi, ecx
jl 0x4857c4
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 4
jne 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x485808
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 4
je 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x48583a
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 1
jne 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x48586c
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 1
je 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x48589e
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 0x10
jne 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x4858d0
jmp 0x485673
mov eax, dword [esp + 0x1c]
cmp edi, eax
jge 0x485673
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
jae 0x485651
movzx edx, byte [ebx]
mov esi, dword [ebp + 0x38]
test byte [edx + esi], 0x10
je 0x485673
inc edi
inc ebx
cmp edi, eax
jl 0x485902
jmp 0x485673
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esp + 0x148]
jle 0x48593b
mov dword [esp + 0x148], eax
movzx eax, byte [esi + 4]
movzx ecx, byte [esi + 5]
shl eax, 8
or eax, ecx
cmp byte [esi + eax + 3], 0x71
lea esi, [esi + eax + 3]
jne 0x485967
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
add esi, edx
cmp byte [esi], 0x71
je 0x485953
add esi, 3
cmp dword [esp + 0x1c], 0x86
jne 0x485c05
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
push esi
push ebx
mov dword [ebp + 0x98], 2
call fcn.004830c0
add esp, 0x1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc ecx
cmp byte [esi], 0x74
push ecx
push edx
push ebp
push eax
push edi
jne 0x4859f0
add esi, 3
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov esi, dword [esp + 0x24]
jmp 0x485c05
mov eax, dword [esp + 0x38]
push eax
push ebx
mov dword [ebp + 0x98], 2
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
jmp 0x485c02
movzx edi, byte [esi + 3]
movzx ecx, byte [esi + 4]
shl edi, 8
or edi, ecx
lea ecx, [edi + edi]
cmp ecx, dword [ebp + 0x14]
jl 0x485fbf
mov eax, dword [esp + 0x1c]
cmp eax, 0x82
jge 0x485a68
cmp eax, 0x7b
je 0x485a68
cmp dword [ebp + 0x68], 0
jne 0x485a72
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
cmp byte [edx + esi], 0x71
je 0x485a72
movzx edx, byte [esi]
movzx eax, byte [edx + 0x4a18a0]
add esi, eax
jmp 0x485c05
mov dword [ebp + 0x98], 2
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x148]
mov edi, dword [ebp + 0xac]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
push edx
movzx edx, byte [esi]
push ebp
push eax
movzx eax, byte [edx + 0x4a18a0]
push ecx
add eax, esi
push eax
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 0xfffffc20
jne 0x485adf
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add ecx, esi
cmp dword [ebp + 0x7c], ecx
jae 0x4869e5
cmp byte [esi], 0x71
je 0x485ae7
cmp byte [ecx], 0x71
jne 0x4869e5
jmp 0x485ae7
test eax, eax
jne 0x4860ea
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl eax, 8
or eax, ecx
add esi, eax
mov dword [ebp + 0xac], edi
cmp byte [esi], 0x71
jne case.0x486851.14
jmp case.0x483198.123
mov al, byte [esi]
cmp al, 0x75
je 0x486239
cmp al, 0x74
jne 0x485b9e
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x144]
inc ecx
push ecx
push edx
push ebp
push edi
push eax
add esi, 3
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov esi, dword [esp + 0x24]
mov al, byte [esi]
cmp al, 0x7b
je 0x486255
cmp al, 0x82
jb 0x485c05
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x144]
inc edx
push edx
push eax
push ebp
push edi
push ecx
mov edx, esi
push edx
push ebx
mov dword [ebp + 0x98], 2
call fcn.004830c0
add esp, 0x1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x24]
cmp byte [ecx], 0x82
jb 0x485bb1
mov dword [ebp + 0x98], 2
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x144]
inc edx
push edx
mov edx, dword [esp + 0x28]
push eax
push ebp
push edi
push ecx
push edx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 0xfffffc1c
jne 0x485bed
mov ecx, dword [ebp + 0xb4]
cmp ecx, dword [esp + 0x24]
jmp 0x485bef
test eax, eax
jne 0x4869e5
mov edx, dword [esp + 0x24]
cmp byte [edx], 0x7b
je 0x48629c
add esi, 3
mov eax, dword [ebp]
mov dword [esp + 0x140], esi
cmp eax, dword [ebp + 4]
jb 0x483133
inc dword [ebp]
mov eax, 0xfffffff8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xffffffeb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov eax, dword [esp + 0x148]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
mov dword [ebp + 0xac], edx
mov edx, dword [esp + 0x154]
push edx
lea edi, [esi + 2]
mov dword [ebp + 0xb0], edi
movzx edx, byte [esi]
push ebp
push eax
movzx eax, byte [edx + 0x4a18a0]
push ecx
movzx ecx, byte [esi + 1]
add eax, esi
add ecx, eax
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x485c94
cmp eax, 0xfffffc19
jne 0x485cae
cmp dword [ebp + 0xac], 0
jne 0x485cae
mov dword [ebp + 0xac], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, 0xfffffc1f
jne 0x4869e5
mov ecx, dword [ebp + 0x7c]
lea esp, [esp]
mov dl, byte [edi]
cmp dl, byte [ecx]
jne 0x485ce0
test dl, dl
je 0x485cdc
mov dl, byte [edi + 1]
cmp dl, byte [ecx + 1]
jne 0x485ce0
add edi, 2
add ecx, 2
test dl, dl
jne 0x485cc0
xor ecx, ecx
jmp 0x485ce5
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4869e5
mov dword [ebp + 0x7c], ebx
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
movzx eax, byte [esi]
push ebp
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push edx
add ecx, esi
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x485d5c
cmp eax, 0xfffffc1d
je 0x485d5c
cmp eax, 0xfffffc1e
je 0x485d5c
cmp eax, 0xfffffc1f
je 0x485d5c
cmp eax, 0xfffffc20
jne 0x4869e5
mov eax, 0xfffffc1a
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
movzx eax, byte [esi]
push ebp
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push edx
add ecx, esi
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x485db3
cmp eax, 0xfffffc20
jne 0x4869e5
mov eax, 0xfffffc1d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
mov dword [ebp + 0xac], edx
mov edx, dword [esp + 0x154]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
lea edi, [esi + 2]
mov dword [ebp + 0xb0], edi
movzx eax, byte [esi]
push ebp
push ecx
movzx ecx, byte [eax + 0x4a18a0]
push edx
movzx edx, byte [esi + 1]
add ecx, esi
add edx, ecx
push edx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x485e1c
cmp eax, 0xfffffc19
jne 0x485da4
cmp dword [ebp + 0xac], 0
jne 0x485da4
mov dword [ebp + 0xac], edi
jmp 0x485da4
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
movzx ecx, byte [esi]
push ebp
push edx
movzx edx, byte [ecx + 0x4a18a0]
push eax
add edx, esi
push edx
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x485e82
cmp eax, 0xfffffc1d
je 0x485e82
cmp eax, 0xfffffc20
jne 0x4869e5
mov dword [ebp + 0x7c], ebx
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
movzx ecx, byte [esi]
push ebp
push edx
movzx edx, byte [ecx + 0x4a18a0]
push eax
movzx eax, byte [esi + 1]
add edx, esi
add eax, edx
push eax
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x485ee9
cmp eax, 0xfffffc1d
je 0x485ee9
cmp eax, 0xfffffc20
jne 0x4869e5
add esi, 2
mov dword [ebp + 0x7c], esi
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x148]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
push edx
movzx edx, byte [esi]
push ebp
push eax
movzx eax, byte [edx + 0x4a18a0]
push ecx
add eax, esi
push eax
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov dword [ebp + 0x7c], esi
mov eax, 0xfffffc20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov eax, dword [esp + 0x148]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
mov dword [ebp + 0xac], edx
mov edx, dword [esp + 0x154]
push edx
lea edi, [esi + 2]
mov dword [ebp + 0xb0], edi
movzx edx, byte [esi]
push ebp
push eax
movzx eax, byte [edx + 0x4a18a0]
push ecx
movzx ecx, byte [esi + 1]
add eax, esi
add ecx, eax
push ecx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 1
je 0x485fab
cmp eax, 0xfffffc19
jne 0x485f37
cmp dword [ebp + 0xac], 0
jne 0x485f37
mov dword [ebp + 0xac], edi
jmp 0x485f37
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + ecx*4]
mov ecx, dword [eax + ecx*4 + 4]
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0x10]
sub edx, edi
lea eax, [eax + edx*4]
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x30], ecx
mov ecx, dword [eax]
mov dword [esp + 0x14], edx
mov edx, ebx
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp + 0xac]
mov dword [esp + 0x28], ecx
mov dword [eax], edx
lea ebx, [ebx]
cmp dword [esp + 0x1c], 0x82
jl 0x486014
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
movzx ecx, byte [esi]
push ebp
push edx
movzx edx, byte [ecx + 0x4a18a0]
push eax
add edx, esi
push edx
push ebx
call fcn.004830c0
add esp, 0x1c
cmp eax, 0xfffffc1c
je 0x4860b8
cmp eax, 0xfffffc20
jne 0x486084
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add ecx, esi
cmp dword [ebp + 0x7c], ecx
jae 0x4869e5
cmp byte [esi], 0x71
je 0x486080
cmp byte [ecx], 0x71
jne 0x4869e5
xor eax, eax
jmp 0x48608c
test eax, eax
jne 0x4869e5
mov ecx, dword [esp + 0x14]
mov dword [ebp + 0x90], ecx
movzx edx, byte [esi + 1]
movzx ecx, byte [esi + 2]
shl edx, 8
or edx, ecx
add esi, edx
mov edx, dword [esp + 0x28]
mov dword [ebp + 0xac], edx
cmp byte [esi], 0x71
je 0x486000
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x18]
lea ecx, [edi + edi]
mov dword [edx + ecx*4], esi
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x30]
mov dword [edx + ecx*4 + 4], esi
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x2c]
sub ecx, edi
mov dword [edx + ecx*4], esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, 0xfffffc1c
jne 0x4869e5
mov cl, byte [esi]
cmp cl, 0x7b
je 0x486124
cmp cl, 0x71
jne 0x486115
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
add esi, ecx
cmp byte [esi], 0x71
je 0x486101
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
shl ecx, 8
or ecx, edx
sub esi, ecx
cmp dword [ebp + 0xb4], esi
jne 0x4869e5
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x144]
cmp ebx, eax
jne 0x486171
cmp dword [esp + 0x1c], 0x99
je 0x486171
cmp dword [ebp + 0xa4], edx
jne 0x486171
cmp dword [ebp + 0x58], edx
jne case.0x486851.14
cmp dword [ebp + 0x5c], edx
je 0x486171
mov ecx, dword [ebp + 0x94]
add ecx, dword [ebp + 0x74]
cmp eax, ecx
je case.0x486851.14
mov edx, dword [esp + 0x148]
mov dword [ebp + 0x7c], eax
mov eax, dword [esp + 0x1c]
neg eax
sbb eax, eax
and eax, 0xfffffc18
mov dword [ebp + 0x80], ebx
mov dword [ebp + 0x8c], edx
inc eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xffffffe6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xfffffffa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0xc0]
cmp ecx, edx
je 0x4869e5
push ecx
call dword [0x4aa34c]
mov eax, dword [esp + 0x30]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov dword [ebp + 0x80], ebx
mov dword [ebp + 0x8c], edx
mov dword [ebp + 0x7c], eax
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x144]
mov dword [ebp + 0x80], ebx
mov dword [ebp + 0x7c], ecx
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov dword [ebp + 0x80], ebx
mov dword [ebp + 0x8c], edi
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x144]
mov esi, dword [esp + 0x24]
inc edx
push edx
push eax
push ebp
push edi
push ecx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov dword [ebp + 0xb4], esi
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x144]
inc eax
push eax
push ecx
push ebp
push edi
push edx
add esi, 3
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov eax, dword [esp + 0x24]
mov dword [ebp + 0xb4], eax
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x144]
inc ecx
push ecx
push edx
push ebp
push edi
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
mov ecx, dword [esp + 0x24]
mov dword [ebp + 0xb4], ecx
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x486851.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x486851.14
mov dword [ebp + 0x60], 1
cmp eax, 1
jle case.0x486851.14
mov eax, 0xfffffff4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov dword [esp + 0x14], ebx
cmp edi, eax
jge 0x4863c3
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push eax
push ecx
mov ecx, ebp
mov edx, esi
mov eax, ebx
call fcn.00483030
add esp, 8
test eax, eax
js 0x48639a
inc edi
add ebx, eax
cmp edi, dword [esp + 0x1c]
jl 0x486373
jmp 0x4863bd
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4863bd
cmp ebx, dword [ebp + 0x78]
jb 0x4863bd
cmp ebx, dword [ebp + 0x84]
jbe 0x4863bd
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp ebx, dword [esp + 0x14]
jb 0x486408
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x140]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x144]
inc edx
push edx
push eax
push ebp
push esi
push ecx
push edi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
sub ebx, dword [esp + 0x20]
cmp ebx, dword [esp + 0x14]
jae 0x4863d1
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jb case.0x486851.14
jmp 0x48633b
mov dword [esp + 0x14], ebx
cmp eax, edi
jge 0x48648b
cmp ebx, dword [ebp + 0x78]
jae 0x486463
movzx esi, byte [ebx]
mov ecx, esi
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x28]
shr esi, 3
mov cl, byte [esi + ecx]
test cl, dl
je 0x486485
inc eax
inc ebx
cmp eax, edi
jl 0x486439
jmp 0x486485
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x486485
cmp ebx, dword [ebp + 0x84]
jbe 0x486485
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x486357
cmp ebx, dword [esp + 0x14]
jb 0x4864cd
mov edi, dword [esp + 0x148]
mov esi, dword [esp + 0x140]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x144]
inc edx
push edx
push eax
push ebp
push edi
push ecx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
dec ebx
cmp ebx, dword [esp + 0x14]
jae 0x486499
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc edx
push edx
mov edx, dword [esp + 0x148]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x154]
push eax
push ebp
push ecx
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
cmp dword [esp + 0x18], edi
jge case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
cmp dword [esp + 0x20], eax
je 0x486538
cmp dword [esp + 0x28], eax
jne case.0x486851.14
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc dword [esp + 0x18]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
inc ebx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x486512
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
push edx
push ebp
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x154]
push eax
push ecx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
cmp dword [esp + 0x18], edi
jge case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx edx, byte [ebx]
inc ebx
cmp dword [esp + 0x20], edx
jne case.0x486851.14
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc dword [esp + 0x18]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x4865b0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc ecx
push ecx
mov ecx, dword [esp + 0x148]
push edx
push ebp
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x154]
push eax
push ecx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
jmp 0x486650
cmp dword [esp + 0x18], edi
jge case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx eax, byte [ebx]
cmp dword [esp + 0x20], eax
je case.0x486851.14
cmp dword [esp + 0x28], eax
je case.0x486851.14
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc dword [esp + 0x18]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
push ebp
push ecx
push edx
inc ebx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x486650
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x154]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
cmp dword [esp + 0x18], edi
jge case.0x486851.14
cmp ebx, dword [ebp + 0x78]
jae 0x48632d
movzx ecx, byte [ebx]
inc ebx
cmp dword [esp + 0x20], ecx
je case.0x486851.14
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc dword [esp + 0x18]
inc edx
push edx
mov edx, dword [esp + 0x148]
push eax
push ebp
push ecx
push edx
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x4866f2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x486851.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x486851.14
mov dword [ebp + 0x60], ecx
cmp eax, ecx
jmp 0x486351
mov eax, 0xfffffff2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
cmp edi, dword [esp + 0x1c]
jge case.0x486851.14
mov edx, dword [ebp + 0x78]
cmp ebx, edx
jae 0x48632d
cmp dword [esp + 0x20], 0xc
jne 0x486823
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4867fe
push 0
lea esi, [ebp + 0x1c]
push eax
mov ecx, ebx
call fcn.00487d20
add esp, 8
test eax, eax
jne case.0x486851.14
mov esi, dword [esp + 0x140]
jmp 0x486823
mov eax, dword [ebp + 0x1c]
sub edx, eax
cmp ebx, edx
ja 0x486823
mov cl, byte [ebx]
cmp cl, byte [ebp + 0x2c]
jne 0x486823
cmp eax, 1
je case.0x486851.14
mov dl, byte [ebx + 1]
cmp dl, byte [ebp + 0x2d]
je case.0x486851.14
mov ecx, dword [esp + 0x20]
movzx eax, byte [ebx]
add ecx, 0xfffffffa
inc ebx
cmp ecx, 0xf
ja case.0x486837.15
jmp dword [ecx*4 + 0x486cf0]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x486851.14
movzx eax, byte [eax + 0x486d40]
jmp dword [eax*4 + 0x486d30]
cmp ebx, dword [ebp + 0x78]
jae case.0x486837.12
cmp byte [ebx], 0xa
jne case.0x486837.12
inc ebx
jmp case.0x486837.12
cmp dword [ebp + 0x64], 0
jne case.0x486851.14
jmp case.0x486837.12
cmp eax, 9
je case.0x486851.14
cmp eax, 0x20
je case.0x486851.14
cmp eax, 0xa0
jmp 0x486930
cmp eax, 9
je case.0x486837.12
cmp eax, 0x20
je case.0x486837.12
cmp eax, 0xa0
jne case.0x486851.14
jmp case.0x486837.12
cmp eax, 0xa
jb case.0x486837.12
cmp eax, 0xd
jbe case.0x486851.14
cmp eax, 0x85
jmp 0x486930
cmp eax, 0xa
jb case.0x486851.14
cmp eax, 0xd
jbe case.0x486837.12
cmp eax, 0x85
jne case.0x486851.14
jmp case.0x486837.12
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 4
jne case.0x486851.14
jmp case.0x486837.12
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 4
jmp 0x486930
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 1
jne case.0x486851.14
jmp case.0x486837.12
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 1
jmp 0x486930
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 0x10
jne case.0x486851.14
jmp case.0x486837.12
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 0x10
je case.0x486851.14
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc eax
push eax
mov eax, dword [esp + 0x148]
push ecx
push ebp
push edx
push eax
push esi
push ebx
inc edi
call fcn.004830c0
add esp, 0x1c
test eax, eax
je 0x4867ba
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp ebx, dword [esp + 0x14]
jb 0x4869d3
mov esi, dword [esp + 0x140]
mov edi, dword [esp + 0x148]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x144]
inc ecx
push ecx
push edx
push ebp
push edi
push eax
push esi
push ebx
call fcn.004830c0
add esp, 0x1c
test eax, eax
jne 0x4869e5
dec ebx
cmp dword [esp + 0x20], 0x11
jne 0x4869cd
cmp ebx, dword [esp + 0x14]
jbe 0x4869d1
cmp byte [ebx], 0xa
jne 0x4869cd
cmp byte [ebx - 1], 0xd
jne 0x4869cd
dec ebx
cmp ebx, dword [esp + 0x14]
jae 0x48698a
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret