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

Disassembly:
sub esp, 0x130
mov dword [esp + 4], edx
push ebx
push ebp
push esi
mov esi, ecx
mov dword [esp + 0x18], esi
push edi
test edx, edx
jne 0x4a928c
cmp dword [esp + 0x154], edx
jne 0x4a9271
push 1
push edx
push edx
push edx
push edx
lea ecx, [esp + 0x168]
call fcn.004a9230
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
lea eax, [esp + 0x154]
sub eax, esi
cdq
xor eax, edx
sub eax, edx
neg eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ebp, dword [esp + 0x14c]
mov eax, dword [ebp]
cmp eax, dword [ebp + 4]
jae 0x4abf1f
nop
inc eax
mov dword [ebp], eax
mov eax, dword [esp + 0x154]
cmp eax, dword [ebp + 8]
jae 0x4acfeb
cmp dword [ebp + 0x98], 2
jne 0x4a92e1
mov eax, dword [esp + 0x150]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x50]
mov dword [esp + 0x54], esi
mov dword [esp + 0x150], eax
mov dword [ebp + 0x98], 0
mov edi, dword [esp + 0x148]
jmp 0x4a92fc
mov edi, dword [esp + 0x148]
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x14c]
mov bl, byte [edx]
movzx ecx, bl
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov byte [esp + 0x23], bl
mov dword [esp + 0x18], ecx
cmp ecx, 0x9b
ja case.0x4a932c.15
movzx eax, byte [ecx + 0x4ad134]
jmp dword [eax*4 + 0x4acffc]
cmp dword [ebp + 0x6c], 0
je 0x4abfe7
movzx eax, byte [edx + 1]
movzx ecx, byte [ecx + 0x4d48b0]
add edx, eax
add edx, ecx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov ebp, edx
mov ebx, esi
mov edx, dword [esp + 0x14c]
mov edi, dword [edx + 0xac]
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
mov edx, dword [esp + 0x20]
push dword [esp + 0x154]
push dword [esp + 0x154]
lea edx, [edx + 3]
call fcn.004a9230
add esp, 0x14
cmp eax, 1
je 0x4a9474
cmp eax, 0xfffffc20
jne 0x4a93d6
mov ecx, dword [esp + 0x14]
movzx edx, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
shl edx, 8
or edx, ecx
mov ecx, dword [esp + 0x14c]
add edx, dword [esp + 0x14]
cmp dword [ecx + 0x7c], edx
jae 0x4abf28
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0x71
je 0x4a93de
cmp byte [edx], 0x71
jmp 0x4a93d8
test eax, eax
jne 0x4abf28
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x14c]
mov eax, dword [esp + 0x14]
mov dword [edx + 0xac], edi
mov al, byte [eax]
cmp al, 0x71
je 0x4a9363
mov edi, dword [esp + 0x14]
cmp al, 0x7c
je 0x4a9420
cmp al, 0x71
jne case.0x4ac932.14
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov al, byte [edi + ecx]
add edi, ecx
cmp al, 0x71
je 0x4a9420
mov ecx, dword [edx + 0x8c]
mov esi, dword [edx + 0x80]
mov dword [esp + 0x14], edi
mov dword [esp + 0x148], ecx
mov dword [esp + 0x1c], esi
cmp al, 0x72
je 0x4a945d
cmp esi, ebx
jne 0x4abcc7
mov edx, dword [esp + 0x14]
add edx, 3
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x148]
jmp 0x4a92f5
mov edx, dword [esp + 0x14c]
mov edi, dword [esp + 0x14]
mov eax, dword [edx + 0x7c]
mov dword [esp + 0x144], eax
mov al, byte [edi]
jmp 0x4a9414
xor ebp, ebp
mov dword [esp + 0x2c], ebp
jmp 0x4aa00a
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
cmp byte [edx + 3], 0x70
jne 0x4a9596
mov edi, dword [0x4e91c4]
test edi, edi
je 0x4a958f
movzx eax, byte [edx + 4]
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x94], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x98], eax
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x144]
sub eax, ecx
mov dword [esp + 0x90], 2
mov dword [esp + 0xa4], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [edx + 5]
mov dword [esp + 0xa8], eax
movzx eax, byte [edx + 6]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 8]
mov dword [esp + 0xb8], ecx
movzx ecx, byte [edx + 7]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov dword [esp + 0xbc], ecx
sar eax, 1
mov dword [esp + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0xb4], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0x90]
push eax
call edi
add esp, 4
test eax, eax
jg case.0x4ac932.14
js 0x4abf28
mov edx, dword [esp + 0x14]
add edx, 0xa
mov dword [esp + 0x14], edx
mov cl, byte [edx + 3]
add edx, 3
cmp cl, 0x89
je 0x4a97dc
cmp cl, 0x8a
je 0x4a97dc
cmp cl, 0x87
je 0x4a9626
cmp cl, 0x88
je 0x4a9626
cmp cl, 0x8b
jne 0x4a95d5
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
jmp 0x4a99d8
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
mov dword [ebp + 0x98], 1
push eax
push 0
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
cmp eax, 1
je 0x4abd4a
test eax, eax
je 0x4a961b
cmp eax, 0xfffffc20
jne 0x4abf28
mov edx, dword [esp + 0x14]
add edx, ebx
jmp 0x4a99d8
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl edx, 8
or edx, eax
lea edi, [edx + edx]
cmp edi, dword [esp + 0x148]
jge 0x4a9650
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x4a97cf
cmp cl, 0x88
jne 0x4a969a
mov eax, dword [esp + 0x14c]
xor edi, edi
mov ebp, dword [ebp + 0x28]
mov ebx, ebp
mov dword [esp + 0x18], edi
cmp dword [eax + 0x20], edi
jle 0x4a969a
nop dword [eax]
movzx ecx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esp + 0x30], eax
movzx eax, byte [eax]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14c]
cmp ecx, edx
je 0x4a96b2
add ebx, dword [eax + 0x24]
inc edi
mov dword [esp + 0x18], edi
cmp edi, dword [eax + 0x20]
jl 0x4a9670
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
xor eax, eax
jmp 0x4a99ca
cmp edi, dword [eax + 0x20]
jge 0x4a969a
mov edi, ebx
cmp ebx, ebp
jbe 0x4a9733
mov ebp, dword [eax + 0x24]
lea eax, [ebx + 2]
sub edi, ebp
lea ecx, [edi + 2]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a96f0
test dl, dl
je 0x4a96ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a96f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a96d0
xor eax, eax
jmp 0x4a96f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a9733
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x148]
jge 0x4a9724
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4a97cf
mov eax, dword [esp + 0x14c]
cmp edi, dword [eax + 0x28]
lea eax, [ebx + 2]
ja 0x4a96c7
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x14c]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [edi + 0x20]
jge 0x4a969a
mov edi, dword [edi + 0x24]
add ebx, 2
mov ebp, dword [esp + 0x30]
add ebp, edi
mov eax, ebx
lea ecx, [ebp + 1]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a9780
test dl, dl
je 0x4a977c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a9780
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a9760
xor eax, eax
jmp 0x4a9785
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a969a
movzx ecx, byte [ebp - 1]
movzx eax, byte [ebp]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x148]
jge 0x4a97b5
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4a97cf
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14c]
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [eax + 0x20]
jl 0x4a9756
jmp 0x4a969a
mov ecx, 3
lea eax, [ecx - 2]
jmp 0x4a99ca
mov edi, dword [ebp + 0xa4]
test edi, edi
je 0x4a95bd
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x4a99b9
cmp edx, dword [edi + 4]
je 0x4a99b9
mov dword [esp + 0x18], 0
cmp cl, 0x8a
jne 0x4a99a6
mov eax, dword [esp + 0x14c]
xor edi, edi
mov ebp, dword [ebp + 0x28]
mov ebx, ebp
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], edi
cmp dword [eax + 0x20], edi
jle 0x4a99a6
movzx ecx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esp + 0x28], eax
movzx eax, byte [eax]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14c]
cmp ecx, edx
je 0x4a9873
add ebx, dword [eax + 0x24]
inc edi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], edi
cmp edi, dword [eax + 0x20]
jl 0x4a9840
jmp 0x4a99a6
cmp edi, dword [eax + 0x20]
jge 0x4a99a6
mov edi, ebx
cmp ebx, ebp
jbe 0x4a990d
mov ebp, dword [eax + 0x24]
lea eax, [ebx + 2]
mov esi, dword [esp + 0x14c]
mov ebx, eax
mov dword [esp + 0x30], eax
nop dword [eax]
sub edi, ebp
mov eax, ebx
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a98c7
test dl, dl
je 0x4a98c3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a98c7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a98a7
xor eax, eax
jmp 0x4a98cc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a98f9
movzx ecx, byte [edi]
xor edx, edx
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 0xa4]
mov eax, dword [eax + 4]
cmp ecx, eax
sete dl
mov dword [esp + 0x18], edx
je 0x4a98fd
cmp edi, dword [esi + 0x28]
ja 0x4a98a0
jmp 0x4a98fd
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2c]
test edx, edx
jne 0x4a99c1
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x14c]
inc eax
mov dword [esp + 0x24], eax
cmp eax, dword [ebp + 0x20]
jge 0x4a99a6
mov edi, dword [ebp + 0x24]
add ebx, 2
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x14c]
add ebp, edi
mov eax, ebx
lea ecx, [ebp + 1]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a9960
test dl, dl
je 0x4a995c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a9960
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a9940
xor eax, eax
jmp 0x4a9965
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a999a
movzx ecx, byte [ebp - 1]
xor edx, edx
movzx eax, byte [ebp]
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 0xa4]
mov eax, dword [eax + 4]
cmp ecx, eax
sete dl
mov dword [esp + 0x18], edx
je 0x4a999e
mov edx, dword [esp + 0x24]
inc edx
mov dword [esp + 0x24], edx
cmp edx, dword [esi + 0x20]
jl 0x4a9937
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
test edx, edx
jne 0x4a99c1
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
jmp 0x4a99c6
mov dword [esp + 0x18], 1
mov ecx, 3
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
add edx, ecx
test eax, eax
jne 0x4abd99
cmp byte [edx], 0x71
mov ebp, dword [esp + 0x14c]
je 0x4abda0
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov eax, dword [esp + 0x14]
movzx edx, byte [edx + 1]
shl edx, 8
movzx eax, byte [eax + 2]
or edx, eax
mov dword [ebp + 0x90], edx
lea edi, [edx + edx]
cmp edi, dword [ebp + 0x14]
jl 0x4a9a38
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [ebp + 0x3c], 1
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov dword [ecx + edi*4], eax
mov ecx, esi
mov eax, dword [ebp + 0xc]
sub ecx, dword [ebp + 0x74]
mov dword [eax + edi*4 + 4], ecx
cmp dword [esp + 0x148], edi
jg 0x4a9a65
lea eax, [edi + 2]
mov dword [esp + 0x148], eax
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp dword [ebp + 0x98], 1
mov edi, dword [ebp + 0xac]
jne 0x4a9a9c
mov ebx, 1
mov dword [ebp + 0x98], 0
jmp 0x4a9aa0
xor ebx, ebx
nop
mov eax, dword [esp + 0x154]
add edx, 3
inc eax
mov ecx, esi
push eax
push 0
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
cmp eax, 1
je 0x4a9b08
cmp eax, 0xfffffc19
je 0x4a9b08
test eax, eax
je 0x4a9ae2
cmp eax, 0xfffffc20
jne 0x4abf28
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp + 0xac], edi
mov al, byte [edx + ecx]
add edx, ecx
mov dword [esp + 0x14], edx
cmp al, 0x71
je 0x4a9aa0
jmp 0x4a9b18
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x144], eax
mov al, byte [edx]
cmp al, 0x72
je case.0x4ac932.14
test ebx, ebx
jne 0x4ac1c1
nop dword [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4a9b30
mov edi, dword [ebp + 0x8c]
add edx, 3
mov dword [esp + 0x14], edx
mov dword [esp + 0x148], edi
jmp 0x4a92fc
cmp dword [ebp + 0x98], 1
mov edi, dword [ebp + 0xac]
jne 0x4a9b7d
mov ebx, 1
mov dword [ebp + 0x98], 0
jmp 0x4a9b80
xor ebx, ebx
nop
mov eax, dword [esp + 0x154]
add edx, 3
inc eax
mov ecx, esi
push eax
push 0
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
mov dword [ebp + 0xac], edi
cmp eax, 1
je case.0x4ac932.14
cmp eax, 0xfffffc19
je case.0x4ac932.14
cmp eax, 0xfffffc1e
je 0x4a9c07
cmp eax, 0xfffffc1d
je 0x4a9c07
cmp eax, 0xfffffc1a
je 0x4a9c07
test eax, eax
je 0x4a9be5
cmp eax, 0xfffffc20
jne 0x4abf28
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x14], edx
cmp byte [edx], 0x71
je 0x4a9b80
jmp 0x4a9c24
mov edx, dword [esp + 0x14]
nop dword [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4a9c10
test ebx, ebx
jne 0x4ac1c1
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92fc
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
mov dword [esp + 0x1c], esi
cmp esi, dword [ebp + 0x74]
jb case.0x4ac932.14
cmp esi, dword [ebp + 0x84]
jae 0x4a9c69
mov dword [ebp + 0x84], esi
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov edi, dword [0x4e91c4]
test edi, edi
je 0x4a9d42
movzx eax, byte [edx + 1]
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x5c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x144]
sub eax, ecx
mov dword [esp + 0x58], 2
mov dword [esp + 0x6c], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [edx + 6]
mov dword [esp + 0x70], eax
movzx eax, byte [edx + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 9]
mov dword [esp + 0x80], ecx
movzx ecx, byte [edx + 8]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov dword [esp + 0x84], ecx
sar eax, 1
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 2]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x58]
push eax
call edi
add esp, 4
test eax, eax
jg case.0x4ac932.14
js 0x4abf28
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
add edx, 0xa
mov dword [esp + 0x14], edx
jmp 0x4a92fc
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
add ebx, dword [ebp + 0x70]
cmp ebx, dword [ebp + 0x70]
jne 0x4a9d6e
xor ecx, ecx
jmp 0x4a9d7b
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [ebp + 0xa4]
mov eax, edx
test eax, eax
je 0x4a9d9b
cmp ecx, dword [eax + 4]
jne 0x4a9d95
cmp esi, dword [eax + 0x10]
je 0x4ac049
mov eax, dword [eax]
test eax, eax
jne 0x4a9d87
add dword [esp + 0x14], 3
lea eax, [esp + 0x3c]
mov dword [esp + 0x40], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x3c], edx
mov dword [ebp + 0xa4], eax
mov dword [esp + 0x48], ecx
cmp ecx, 0x1e
jg 0x4a9dcf
lea eax, [esp + 0xc8]
mov dword [esp + 0x44], eax
jmp 0x4a9def
lea eax, [ecx*4]
push eax
call fcn.004b2c3e
add esp, 4
mov dword [esp + 0x44], eax
test eax, eax
je 0x4ac0ad
mov ecx, dword [esp + 0x48]
shl ecx, 2
push ecx
push dword [ebp + 0xc]
push eax
call fcn.004b19e0
mov al, byte [ebx]
add esp, 0xc
mov byte [esp + 0x23], al
cmp al, 0x82
jb 0x4a9e13
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ebx]
push ebp
push edi
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d48b0]
add edx, ebx
call fcn.004a9230
mov ecx, dword [esp + 0x5c]
add esp, 0x14
shl ecx, 2
mov edi, eax
push ecx
push dword [esp + 0x48]
push dword [ebp + 0xc]
call fcn.004b19e0
mov edx, dword [esp + 0x48]
add esp, 0xc
mov dword [ebp + 0xa4], edx
cmp edi, 1
je 0x4a9eb4
cmp edi, 0xfffffc19
je 0x4a9eb4
test edi, edi
je 0x4a9e82
cmp edi, 0xfffffc20
jne 0x4ac059
lea eax, [esp + 0x3c]
mov dword [ebp + 0xa4], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x71
jne 0x4ac07e
mov al, byte [esp + 0x23]
mov edi, dword [esp + 0x148]
jmp 0x4a9e05
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0xc8]
cmp eax, ecx
je 0x4a9ecc
push eax
call fcn.004b2343
add esp, 4
mov esi, dword [ebp + 0x80]
mov eax, dword [ebp + 0x7c]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x144], eax
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
jmp 0x4a92fc
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je case.0x4a932c.113
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov eax, dword [esp + 0x154]
lea edi, [edx + 1]
inc eax
mov edx, edi
push eax
push dword [esp + 0x154]
mov ecx, esi
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x71
je 0x4a9f43
lea edx, [edi + 3]
mov edi, dword [esp + 0x148]
mov dword [esp + 0x14], edx
jmp 0x4a92fc
inc edx
mov dword [esp + 0x14], edx
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4a9f70
mov eax, dword [esp + 0x154]
add edx, 3
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
push ebp
push edi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov edx, dword [esp + 0x14]
jmp 0x4a92fc
inc edx
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4a9fc0
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92fc
movzx ecx, byte [edx + 1]
inc edx
mov dword [esp + 0x14], edx
mov ebp, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], ebp
cmp ecx, 0x80
je 0x4aa00a
cmp ecx, 0x85
jne 0x4aa1f4
movzx ebx, byte [edx + 3]
movzx eax, byte [edx + 4]
mov edi, dword [esp + 0x14c]
shl ebx, 8
or ebx, eax
lea eax, [ebx + ebx]
cmp eax, dword [edi + 0x14]
jge case.0x4a932c.126
mov ecx, edx
shl eax, 2
sub ecx, dword [edi + 0x70]
xor ebp, ebp
mov dword [esp + 0x30], ecx
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x24], eax
mov edx, dword [ecx + eax]
mov eax, dword [ecx + eax + 4]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x10]
sub eax, ebx
mov dword [esp + 0x28], edx
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x34], eax
mov eax, edi
mov edi, dword [eax + 0x90]
jmp 0x4aa06b
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x10]
mov edx, esi
sub edx, dword [eax + 0x74]
sub ecx, ebx
cmp dword [esp + 0x18], 0x82
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x4aa096
mov eax, dword [esp + 0x14c]
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ecx]
push dword [esp + 0x154]
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d48b0]
push dword [esp + 0x154]
add edx, ecx
mov ecx, esi
call fcn.004a9230
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc1b
jne 0x4aa118
mov eax, dword [esp + 0x14c]
mov ebp, 1
mov ecx, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov edi, dword [eax + 0x90]
mov dword [esp + 0x148], ecx
mov ecx, dword [eax + 0x70]
add ecx, dword [esp + 0x30]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], ecx
jmp 0x4aa06b
cmp edx, 0xfffffc20
jne 0x4aa160
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14c]
add ecx, dword [esp + 0x14]
cmp dword [eax + 0x7c], ecx
jae 0x4acd0e
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
mov eax, dword [esp + 0x14c]
je 0x4aa16f
cmp byte [ecx], 0x71
jne 0x4acd0e
jmp 0x4aa16f
test edx, edx
jne 0x4acd0e
mov eax, dword [esp + 0x14c]
mov edx, dword [esp + 0x14]
mov dword [eax + 0x90], edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x14], edx
cmp byte [edx], 0x71
je 0x4aa064
test ebp, ebp
jne 0x4aa1cc
mov edi, dword [esp + 0x14c]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov eax, dword [edi + 0xc]
mov dword [ecx + eax], edx
mov eax, dword [edi + 0xc]
mov edx, dword [esp + 0x38]
mov dword [ecx + eax + 4], edx
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
sub ecx, ebx
mov edx, dword [esp + 0x34]
mov dword [eax + ecx*4], edx
mov edx, dword [esp + 0x14]
cmp dword [esp + 0x2c], 0
jne 0x4a9461
test ebp, ebp
je case.0x4ac932.14
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92f5
xor ebp, ebp
mov edi, edx
xor ebx, ebx
mov edx, dword [esp + 0x14c]
sub edi, dword [edx + 0x70]
cmp ecx, 0x82
jb 0x4aa214
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ecx]
push edx
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d48b0]
push dword [esp + 0x154]
add edx, ecx
mov ecx, esi
call fcn.004a9230
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc1b
jne 0x4aa28c
mov edx, dword [esp + 0x14c]
mov ebx, 1
mov ecx, dword [esp + 0x18]
mov eax, dword [edx + 0x8c]
mov esi, dword [edx + 0x80]
mov dword [esp + 0x148], eax
mov eax, dword [edx + 0x70]
add eax, edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], eax
jmp 0x4aa202
cmp edx, 0xfffffc20
jne 0x4aa2c7
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14c]
add ecx, dword [esp + 0x14]
cmp dword [eax + 0x7c], ecx
jae 0x4acd0e
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
je 0x4aa2cf
cmp byte [ecx], 0x71
jmp 0x4aa2c9
test edx, edx
jne 0x4acd0e
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], edx
cmp byte [edx], 0x71
mov edx, dword [esp + 0x14c]
je 0x4aa202
test ebx, ebx
jne 0x4a945d
test ebp, ebp
je case.0x4ac932.14
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x4a92f5
movzx ecx, byte [edx + 1]
mov ebp, edx
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub ebp, ecx
mov al, byte [ebp]
cmp al, 0x82
jae 0x4aa347
cmp al, 0x7b
je 0x4aa347
mov dword [esp + 0x2c], 0
jmp 0x4aa35e
mov ebx, dword [esp + 0x150]
mov ecx, dword [ebx + 4]
mov ebx, dword [ebx]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x150], ebx
cmp al, 0x77
jb 0x4aa36a
cmp al, 0x7a
jbe 0x4ac1a4
cmp al, 0x7c
je 0x4ac1a4
cmp al, 0x7f
je 0x4aa386
cmp al, 0x84
je 0x4aa386
cmp al, 0x80
je 0x4aa386
cmp al, 0x85
jne 0x4aa46d
movzx edx, byte [ebp + 3]
movzx eax, byte [ebp + 4]
mov edi, dword [esp + 0x14c]
shl edx, 8
or edx, eax
mov eax, dword [edi + 0xa4]
lea ebx, [edx + edx]
test eax, eax
je 0x4aa3b0
cmp dword [eax + 4], edx
je 0x4ac0bd
mov dword [edi + 0x90], edx
cmp ebx, dword [edi + 0x14]
jl 0x4aa3fa
mov dword [edi + 0x3c], 1
mov ebx, dword [esp + 0x148]
mov edx, dword [esp + 0x14]
mov al, byte [edx]
cmp al, 0x72
je 0x4aa3dd
cmp esi, dword [esp + 0x2c]
jne 0x4abdf1
add edx, 3
cmp byte [ebp], 0x7b
mov dword [esp + 0x14], edx
je 0x4ac163
mov edi, dword [esp + 0x148]
jmp 0x4a92f5
mov ecx, dword [esp + 0x148]
cmp ebx, ecx
jle 0x4aa437
mov eax, dword [edi + 0xc]
mov dword [esp + 0x34], 0
lea edi, [eax + ecx*4]
lea eax, [eax + ebx*4]
mov ecx, eax
sub ecx, edi
add ecx, 3
shr ecx, 2
cmp edi, eax
cmova ecx, dword [esp + 0x34]
test ecx, ecx
je 0x4aa430
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x14c]
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + ebx*4 + 4], ecx
cmp dword [esp + 0x148], ebx
jg 0x4aa3c2
add ebx, 2
mov dword [esp + 0x148], ebx
jmp 0x4aa3c9
mov edi, dword [esp + 0x14c]
mov ebx, dword [esp + 0x148]
jmp 0x4aa3cd
cmp dword [ebp + 0x40], 0
je case.0x4a932c.1
cmp esi, dword [ebp + 0x74]
je case.0x4ac932.14
cmp esi, dword [ebp + 0x74]
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp dword [ebp + 0x40], 0
je 0x4aa4a5
cmp esi, dword [ebp + 0x74]
je case.0x4ac932.14
mov ecx, dword [ebp + 0x74]
cmp esi, ecx
je 0x4aa504
cmp esi, dword [ebp + 0x78]
je case.0x4ac932.14
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4aa4de
cmp esi, ecx
jbe case.0x4ac932.14
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.004ae450
add esp, 0xc
test eax, eax
jne 0x4aa500
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [ebp + 0x1c]
lea eax, [edx + ecx]
cmp esi, eax
jb case.0x4ac932.14
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne case.0x4ac932.14
cmp edx, 1
je 0x4aa500
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne case.0x4ac932.14
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp esi, eax
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
inc edx
mov dword [esp + 0x144], esi
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x4aa594
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4aa56b
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
je case.0x4ac932.14
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov edx, dword [ebp + 0x1c]
sub ecx, edx
cmp esi, ecx
ja case.0x4ac932.14
mov al, byte [esi]
cmp al, byte [ebp + 0x2c]
jne case.0x4ac932.14
cmp edx, 1
je 0x4aa500
mov al, byte [esi + 1]
jmp 0x4aa4fb
cmp dword [ebp + 0x44], 0
jne case.0x4ac932.14
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4aa504
cmp esi, dword [ebp + 0x84]
jbe 0x4aa504
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp dword [ebp + 0x44], 0
jne case.0x4ac932.14
cmp dword [ebp + 0x54], 0
je case.0x4a932c.23
cmp esi, dword [ebp + 0x78]
jb case.0x4ac932.14
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4aa504
cmp esi, dword [ebp + 0x84]
jbe 0x4aa504
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x4aa685
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4aa64d
push 0
push edi
push ecx
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
je case.0x4ac932.14
mov ecx, dword [ebp + 0x78]
mov edx, dword [edi]
jmp 0x4aa677
mov edx, dword [edi]
mov eax, ecx
sub eax, edx
cmp esi, eax
ja case.0x4ac932.14
mov al, byte [esi]
cmp al, byte [ebp + 0x2c]
jne case.0x4ac932.14
cmp edx, 1
je 0x4aa677
mov al, byte [esi + 1]
cmp al, byte [ebp + 0x2d]
jne case.0x4ac932.14
sub ecx, edx
cmp esi, ecx
jne case.0x4ac932.14
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4aa6a7
cmp esi, dword [ebp + 0x84]
jbe 0x4aa6a7
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
mov edi, dword [esp + 0x148]
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x74]
jne 0x4aa6c1
xor edx, edx
jmp 0x4aa6e3
cmp esi, dword [ebp + 0x84]
ja 0x4aa6d2
lea eax, [esi - 1]
mov dword [ebp + 0x84], eax
mov ecx, dword [ebp + 0x38]
movzx eax, byte [esi - 1]
movzx edx, byte [eax + ecx]
shr edx, 4
and edx, 1
cmp esi, dword [ebp + 0x78]
jb 0x4aa70e
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4aa70a
cmp esi, dword [ebp + 0x84]
jbe 0x4aa70a
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
xor ecx, ecx
jmp 0x4aa71e
mov ecx, dword [ebp + 0x38]
movzx eax, byte [esi]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
mov ebx, dword [esp + 0x14]
xor edx, ecx
mov al, byte [ebx]
inc ebx
mov dword [esp + 0x14], ebx
cmp al, 5
jne 0x4aa732
xor edx, 1
test edx, edx
jne case.0x4ac932.14
mov edx, dword [esp + 0x14]
jmp 0x4a92fc
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4aa76c
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x4aa794
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
jne case.0x4ac932.14
jmp 0x4aa794
mov eax, dword [ebp + 0x78]
mov ecx, dword [ebp + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x4aa794
mov al, byte [esi]
cmp al, byte [ebp + 0x2c]
jne 0x4aa794
cmp ecx, 1
je case.0x4ac932.14
mov al, byte [esi + 1]
cmp al, byte [ebp + 0x2d]
je case.0x4ac932.14
mov edx, dword [esp + 0x14]
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
inc esi
inc edx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 4
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 4
je case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 1
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 1
je case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 0x10
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x1c], esi
test byte [ecx + eax], 0x10
je case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0xd
ja 0x4aa8ec
je 0x4aa8cc
cmp al, 0xa
je 0x4aa504
sub al, 0xb
cmp al, 1
ja case.0x4ac932.14
jmp 0x4aa8f4
cmp esi, ecx
jae 0x4aa504
cmp byte [esi], 0xa
jne 0x4aa504
inc esi
inc edx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp al, 0x85
jne case.0x4ac932.14
cmp dword [ebp + 0x64], 0
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0xa0
ja 0x4aa504
je case.0x4ac932.14
cmp al, 9
je case.0x4ac932.14
cmp al, 0x20
je case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0xa0
ja case.0x4ac932.14
je 0x4aa504
cmp al, 9
je 0x4aa504
cmp al, 0x20
jne case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0x85
ja 0x4aa504
je case.0x4ac932.14
cmp al, 0xa
jb 0x4aa504
cmp al, 0xd
jbe case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0x85
ja case.0x4ac932.14
je 0x4aa504
cmp al, 0xa
jb case.0x4ac932.14
cmp al, 0xd
ja case.0x4ac932.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x4a92fc
mov ebx, dword [esp + 0x14]
xor edx, edx
cmp ecx, 0x6e
sete dl
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
add ebx, 3
shl ecx, 8
or ecx, eax
mov dword [esp + 0x2c], edx
add ecx, ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x28], ecx
cmp ecx, edi
jge 0x4aaa28
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + ecx*4]
test edi, edi
js 0x4aaa28
mov ebp, dword [eax + ecx*4 + 4]
sub ebp, edi
jmp 0x4aaa32
mov ebp, dword [ebp + 0x4c]
neg ebp
sbb ebp, ebp
neg ebp
dec ebp
mov bl, byte [ebx]
movzx edi, bl
lea eax, [edi - 0x62]
cmp eax, 7
ja case.default.0x4aaa4a
movzx eax, byte [eax + 0x4ad1d8]
jmp dword [eax*4 + 0x4ad1d0]
movsx eax, byte [edi + 0x4d43fa]
lea ebx, [edi - 0x62]
and ebx, 1
test eax, eax
mov dword [esp + 0x30], ebx
movsx ebx, byte [edi + 0x4d4402]
mov edi, closesocket
cmove eax, edi
mov dword [esp + 0x18], eax
mov eax, 1
jmp 0x4aaabd
mov edi, dword [esp + 0x14]
xor eax, eax
cmp bl, 0x69
sete al
movzx ebx, byte [edi + 1]
mov dword [esp + 0x30], eax
movzx eax, byte [edi + 2]
movzx edi, byte [edi + 3]
shl ebx, 8
or ebx, eax
shl edi, 8
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 4]
or edi, eax
mov eax, closesocket
cmove edi, eax
mov eax, 5
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x14]
add edi, eax
mov dword [esp + 0x14], edi
mov eax, edi
mov edi, dword [esp + 0x148]
mov dword [esp + 0x24], eax
test ebp, ebp
je 0x4a92f1
jns 0x4aaaea
mov dword [esp + 0x14], eax
test ebx, ebx
je 0x4a92f1
mov edi, 1
cmp ebx, edi
jl 0x4aab21
push edx
push dword [esp + 0x150]
mov edx, esi
push ebp
call fcn.004a91a0
add esp, 0xc
test eax, eax
js 0x4ac1f7
mov ecx, dword [esp + 0x28]
add esi, eax
mov edx, dword [esp + 0x2c]
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebx
jle 0x4aaaf3
mov eax, dword [esp + 0x18]
cmp ebx, eax
jne 0x4ac22d
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x148]
mov dword [esp + 0x14], edx
jmp 0x4a92f5
mov ebx, dword [esp + 0x14c]
push edx
push ebx
push ebp
mov edx, esi
call fcn.004a91a0
add esp, 0xc
test eax, eax
js 0x4ac3ac
mov edx, dword [esp + 0x14]
add esi, eax
mov edi, dword [esp + 0x148]
mov ebp, ebx
mov dword [esp + 0x1c], esi
jmp 0x4a92fc
lea ebp, [edx + 1]
add edx, 0x21
mov dword [esp + 0x14], edx
mov dword [esp + 0x2c], ebp
mov dl, byte [edx]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x4aab9b
movzx eax, byte [eax + 0x4ad1e8]
jmp dword [eax*4 + 0x4ad1e0]
movsx eax, byte [ecx + 0x4d43fa]
lea edx, [ecx - 0x62]
inc dword [esp + 0x14]
and edx, 1
movsx ebx, byte [ecx + 0x4d4402]
mov dword [esp + 0x24], edx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4aac1c
mov dword [esp + 0x18], connect
jmp 0x4aac1c
xor eax, eax
cmp dl, 0x69
mov edx, dword [esp + 0x14]
sete al
mov dword [esp + 0x24], eax
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
movzx ecx, byte [edx + 3]
shl ebx, 8
or ebx, eax
shl ecx, 8
movzx eax, byte [edx + 4]
or ecx, eax
mov eax, closesocket
cmove ecx, eax
add edx, 5
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
jmp 0x4aac1c
mov dword [esp + 0x18], 1
mov ebx, 1
mov edi, 1
cmp ebx, edi
jl 0x4aac63
mov ecx, dword [esp + 0x14c]
mov ebp, dword [ecx + 0x78]
nop
cmp esi, ebp
jae 0x4ac3c8
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x1c], esi
test byte [edx + ecx], al
je case.0x4ac932.14
inc edi
cmp edi, ebx
jle 0x4aac30
mov ebp, ecx
mov edi, dword [esp + 0x18]
cmp ebx, edi
je 0x4a92ea
cmp dword [esp + 0x24], 0
je 0x4ac3e2
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
cmp ebx, edi
jge case.0x4ac932.14
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4ac3cf
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + ebp], al
je case.0x4ac932.14
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
inc ebx
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4aacb5
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebp + 0x78]
sub eax, esi
cmp eax, 1
jl 0x4ac1d1
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp byte [edx + 1], al
jne case.0x4ac932.14
add edx, 2
mov dword [esp + 0x14], edx
jmp 0x4a92fc
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
mov eax, dword [esp + 0x14]
mov edx, dword [ebp + 0x30]
movzx ecx, byte [esi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x4ac932.14
mov edx, dword [esp + 0x14]
inc esi
add edx, 2
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], edx
jmp 0x4a92fc
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
add edx, 3
mov edi, ebp
jmp 0x4aae4c
mov dword [esp + 0x28], 1
movzx ebp, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x18], ebp
cmp bl, 0x28
je 0x4aadce
mov dword [esp + 0x24], edi
cmp bl, 0x35
jne 0x4aadd6
mov dword [esp + 0x24], 1
add edx, 3
jmp 0x4aae50
xor edi, edi
mov dword [esp + 0x28], 1
mov ebp, closesocket
inc edx
jmp 0x4aae4c
mov dword [esp + 0x28], 1
mov edi, 1
mov ebp, closesocket
inc edx
jmp 0x4aae4c
xor edi, edi
mov dword [esp + 0x28], 1
inc edx
lea ebp, [edi + 1]
jmp 0x4aae4c
cmp ecx, 0x2e
sbb eax, eax
inc edx
and eax, 0xfffffff3
mov dword [esp + 0x14], edx
add eax, 0x2e
sub ecx, eax
mov eax, closesocket
mov edx, ecx
and edx, 1
mov dword [esp + 0x24], edx
movsx ebp, byte [ecx + 0x4d445c]
movsx edi, byte [ecx + 0x4d4464]
test ebp, ebp
mov edx, dword [esp + 0x14]
cmove ebp, eax
mov dword [esp + 0x18], ebp
movzx ebx, byte [edx]
inc edx
cmp byte [esp + 0x23], 0x2e
mov dword [esp + 0x14], edx
jb 0x4aaf3e
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x34]
mov al, byte [ebx + eax]
mov byte [esp + 0x23], al
movzx ebp, al
cmp edi, 1
jl 0x4aaeac
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x4ac3c8
movzx eax, byte [esi]
cmp ebx, eax
je 0x4aae9b
cmp ebp, eax
jne case.0x4ac932.14
inc esi
inc ecx
mov dword [esp + 0x1c], esi
cmp ecx, edi
jle 0x4aae84
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x18]
cmp edi, edx
je 0x4a92ea
cmp dword [esp + 0x24], 0
jne 0x4ac4f5
mov eax, esi
mov dword [esp + 0x18], eax
cmp edi, edx
jge 0x4aaeed
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x4aaf0f
movzx eax, byte [esi]
cmp ebx, eax
je 0x4aaedf
cmp ebp, eax
jne 0x4aaee9
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4aaed0
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x14c]
cmp dword [esp + 0x28], 0
je 0x4ac49d
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
jmp 0x4a92fc
mov ebp, dword [esp + 0x14c]
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4aaf38
cmp esi, dword [ebp + 0x84]
jbe 0x4aaf38
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
mov eax, dword [esp + 0x18]
jmp 0x4aaef4
mov ecx, 1
cmp edi, ecx
jl 0x4aaf72
mov eax, dword [esp + 0x14c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4ac3c8
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp ebx, eax
jne case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4aaf51
mov edx, dword [esp + 0x14]
cmp edi, ebp
je 0x4a9468
cmp dword [esp + 0x24], 0
jne 0x4ac5bb
mov edx, dword [esp + 0x18]
mov ebp, esi
cmp edi, edx
jge 0x4aafb9
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4ab01f
movzx eax, byte [esi]
cmp ebx, eax
jne 0x4aafb9
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4aafa0
mov ecx, dword [esp + 0x14c]
cmp dword [esp + 0x28], 0
jne 0x4a92ea
cmp esi, ebp
jb case.0x4ac932.14
mov eax, dword [esp + 0x154]
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push dword [esp + 0x154]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
dec esi
test eax, eax
jne 0x4abf28
mov ecx, dword [esp + 0x14c]
cmp esi, ebp
jae 0x4aafd3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4aafc0
cmp esi, dword [ecx + 0x84]
jbe 0x4aafc0
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4aca9d
jmp 0x4aafc0
cmp esi, dword [ebp + 0x78]
jae 0x4ac1d1
movzx ecx, byte [esi]
inc edx
inc esi
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], esi
cmp bl, 0x20
jne 0x4ab08f
movzx edx, byte [edx]
inc dword [esp + 0x14]
cmp edx, ecx
je case.0x4ac932.14
mov eax, dword [ebp + 0x34]
movzx eax, byte [eax + edx]
cmp eax, ecx
je case.0x4ac932.14
mov edx, dword [esp + 0x14]
jmp 0x4a92fc
movzx eax, byte [edx]
inc edx
mov dword [esp + 0x14], edx
cmp eax, ecx
jne 0x4a92fc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
add edx, 3
mov edi, ebp
jmp 0x4ab184
movzx ebp, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x18], ebp
cmp bl, 0x42
je 0x4ab0e4
mov dword [esp + 0x24], edi
cmp bl, 0x4f
jne 0x4ab0ec
mov dword [esp + 0x24], 1
add edx, 3
jmp 0x4ab188
xor edi, edi
mov dword [esp + 0x28], 1
mov ebp, closesocket
inc edx
jmp 0x4ab184
mov dword [esp + 0x28], 1
mov edi, 1
mov ebp, closesocket
inc edx
jmp 0x4ab184
xor edi, edi
mov dword [esp + 0x28], 1
inc edx
lea ebp, [edi + 1]
jmp 0x4ab184
movzx ebp, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x28], 1
add edx, 3
jmp 0x4ab184
cmp ecx, 0x48
sbb eax, eax
inc edx
and eax, 0xfffffff3
mov dword [esp + 0x14], edx
add eax, 0x48
sub ecx, eax
mov eax, closesocket
mov edx, ecx
and edx, 1
mov dword [esp + 0x24], edx
movsx ebp, byte [ecx + 0x4d445c]
movsx edi, byte [ecx + 0x4d4464]
test ebp, ebp
mov edx, dword [esp + 0x14]
cmove ebp, eax
mov dword [esp + 0x18], ebp
movzx ebx, byte [edx]
mov ecx, 1
inc edx
cmp byte [esp + 0x23], 0x48
mov dword [esp + 0x14], edx
jb 0x4ab27e
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x34]
mov al, byte [ebx + eax]
mov byte [esp + 0x23], al
movzx ebp, al
cmp edi, ecx
jl 0x4ab1e5
mov edx, dword [edx + 0x78]
nop dword [eax + eax]
cmp esi, edx
jae 0x4ac3c8
movzx eax, byte [esi]
cmp ebx, eax
je case.0x4ac932.14
cmp ebp, eax
je case.0x4ac932.14
inc esi
inc ecx
mov dword [esp + 0x1c], esi
cmp ecx, edi
jle 0x4ab1c0
mov edx, dword [esp + 0x18]
cmp edi, edx
je 0x4a92ea
cmp dword [esp + 0x24], 0
jne 0x4ac6a5
mov eax, esi
mov dword [esp + 0x18], eax
cmp edi, edx
jge 0x4ab22d
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4ab24f
movzx eax, byte [esi]
cmp ebx, eax
je 0x4ab229
cmp ebp, eax
je 0x4ab229
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4ab210
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x14c]
cmp dword [esp + 0x28], 0
je 0x4ac653
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
jmp 0x4a92fc
mov ebp, dword [esp + 0x14c]
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4ab278
cmp esi, dword [ebp + 0x84]
jbe 0x4ab278
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
mov eax, dword [esp + 0x18]
jmp 0x4ab234
cmp edi, 1
jl 0x4ab2b1
mov eax, dword [esp + 0x14c]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4ac3c8
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp ebx, eax
je case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab290
mov edx, dword [esp + 0x14]
cmp edi, ebp
je 0x4a9468
cmp dword [esp + 0x24], 0
jne 0x4ac751
mov edx, dword [esp + 0x18]
mov ebp, esi
cmp edi, edx
jge 0x4ab2f1
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4ab35c
movzx eax, byte [esi]
cmp ebx, eax
je 0x4ab2f1
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4ab2d8
mov ecx, dword [esp + 0x14c]
cmp dword [esp + 0x28], 0
jne 0x4a92ea
cmp esi, ebp
jb case.0x4ac932.14
nop dword [eax + eax]
mov eax, dword [esp + 0x154]
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push dword [esp + 0x154]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov ecx, dword [esp + 0x14c]
dec esi
cmp esi, ebp
jae 0x4ab310
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4ab2f8
cmp esi, dword [ecx + 0x84]
jbe 0x4ab2f8
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4aca9d
jmp 0x4ab2f8
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x24], 1
mov dword [esp + 0x18], ecx
mov edi, ecx
add edx, 3
jmp 0x4ab46f
movzx ecx, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
xor edx, edx
shl ecx, 8
or ecx, eax
cmp bl, 0x5c
mov dword [esp + 0x18], ecx
sete dl
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x14]
add edx, 3
jmp 0x4ab46f
xor edi, edi
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], connect
inc edx
jmp 0x4ab46f
mov dword [esp + 0x28], 1
mov edi, 1
mov dword [esp + 0x18], connect
inc edx
jmp 0x4ab46f
xor edi, edi
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 1
inc edx
jmp 0x4ab46f
movzx ecx, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], ecx
add edx, 3
jmp 0x4ab46f
movsx eax, byte [ecx + 0x4d4407]
inc edx
movsx edi, byte [ecx + 0x4d440f]
mov dword [esp + 0x14], edx
lea edx, [ecx - 0x55]
and edx, 1
mov ecx, closesocket
test eax, eax
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x14]
cmove eax, ecx
mov dword [esp + 0x18], eax
mov al, byte [edx]
inc edx
mov byte [esp + 0x23], al
movzx ebp, al
mov dword [esp + 0x14], edx
test edi, edi
jle 0x4ab4ec
lea eax, [ebp - 6]
cmp eax, 0xf
ja case.0x4ac918.15
jmp dword [eax*4 + 0x4ad1f0]
mov ebx, 1
cmp edi, ebx
jl 0x4ab4ec
mov ecx, dword [esp + 0x14c]
nop dword [eax + eax]
mov eax, dword [ecx + 0x78]
cmp esi, eax
jae 0x4ac3cf
mov edx, dword [ecx + 0x18]
add ecx, 0x1c
test edx, edx
je 0x4ab4f8
push 0
push ecx
push eax
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
jne case.0x4ac932.14
mov ecx, dword [esp + 0x14c]
inc esi
inc ebx
mov dword [esp + 0x1c], esi
cmp ebx, edi
jle 0x4ab4b0
mov ebx, dword [esp + 0x14c]
jmp 0x4ab862
mov ecx, dword [ecx]
sub eax, ecx
cmp esi, eax
ja 0x4ab4db
mov edx, dword [esp + 0x14c]
mov al, byte [esi]
cmp al, byte [edx + 0x2c]
jne 0x4ab527
cmp ecx, 1
je case.0x4ac932.14
mov al, byte [esi + 1]
mov ecx, edx
cmp al, byte [ecx + 0x2d]
je case.0x4ac932.14
jmp 0x4ab4e2
mov ecx, edx
jmp 0x4ab4e2
mov ebx, dword [esp + 0x14c]
mov eax, dword [ebx + 0x78]
sub eax, edi
cmp esi, eax
ja 0x4aca73
add esi, edi
mov dword [esp + 0x1c], esi
jmp 0x4ab862
mov ebx, dword [esp + 0x14c]
mov ecx, 1
cmp edi, ecx
jl 0x4ab862
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4aca73
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [esp + 0x1c], esi
cmp eax, 0x7b
ja case.0x4ac932.14
movzx eax, byte [eax + 0x4ad240]
jmp dword [eax*4 + 0x4ad230]
cmp esi, edx
jae case.0x4ab584.10
cmp byte [esi], 0xa
jne case.0x4ab584.10
inc esi
mov dword [esp + 0x1c], esi
jmp case.0x4ab584.10
cmp dword [ebx + 0x64], 0
jne case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab561
jmp 0x4ab862
mov ebx, dword [esp + 0x14c]
mov ecx, 1
cmp edi, ecx
jl 0x4ab862
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4aca73
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 9
je case.0x4ac932.14
cmp al, 0x20
je case.0x4ac932.14
cmp al, 0xa0
je case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab5c6
jmp 0x4ab862
mov ebx, dword [esp + 0x14c]
mov ecx, 1
cmp edi, ecx
jl 0x4ab862
mov edx, dword [ebx + 0x78]
nop
cmp esi, edx
jae 0x4aca73
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 9
je 0x4ab62f
cmp al, 0x20
je 0x4ab62f
cmp al, 0xa0
jne case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab610
jmp 0x4ab862
mov ebx, dword [esp + 0x14c]
mov ecx, 1
cmp edi, ecx
jl 0x4ab862
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4aca73
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0xa
jb 0x4ab673
cmp al, 0xd
jbe case.0x4ac932.14
cmp al, 0x85
je case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab650
jmp 0x4ab862
mov ebx, dword [esp + 0x14c]
mov ecx, 1
cmp edi, ecx
jl 0x4ab862
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4aca73
mov al, byte [esi]
inc esi
mov dword [esp + 0x1c], esi
cmp al, 0xa
jb case.0x4ac932.14
cmp al, 0xd
jbe 0x4ab6b7
cmp al, 0x85
jne case.0x4ac932.14
inc ecx
cmp ecx, edi
jle 0x4ab694
jmp 0x4ab862
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
jne case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab6d8
jmp 0x4ab860
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
je case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab720
jmp 0x4ab860
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
jne case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab765
jmp 0x4ab860
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
je case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab7b0
jmp 0x4ab860
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
jne case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab7f5
jmp 0x4ab860
mov edx, 1
cmp edi, edx
jl 0x4ab4ec
mov eax, dword [esp + 0x14c]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x4ac7e9
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
je case.0x4ac932.14
mov eax, dword [esp + 0x14c]
inc esi
inc edx
mov dword [esp + 0x1c], esi
cmp edx, edi
jle 0x4ab837
mov ebx, eax
mov edx, dword [esp + 0x18]
cmp edi, edx
je 0x4a92ea
cmp dword [esp + 0x24], 0
jne 0x4ac871
lea eax, [ebp - 6]
mov ebx, esi
cmp eax, 0xf
ja case.0x4ac918.15
jmp dword [eax*4 + 0x4ad2bc]
mov ebp, dword [esp + 0x14c]
cmp edi, edx
jge 0x4ab9cb
nop dword [eax]
mov eax, dword [ebp + 0x78]
cmp esi, eax
jae 0x4ab9ed
mov edx, dword [ebp + 0x18]
lea ecx, [ebp + 0x1c]
test edx, edx
je 0x4ab8cd
push 0
push ecx
push eax
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
jne 0x4ab9cb
jmp 0x4ab8f1
mov ecx, dword [ecx]
sub eax, ecx
cmp esi, eax
ja 0x4ab8f1
mov al, byte [esi]
cmp al, byte [ebp + 0x2c]
jne 0x4ab8f1
cmp ecx, 1
je 0x4ab9cb
mov al, byte [esi + 1]
cmp al, byte [ebp + 0x2d]
je 0x4ab9cb
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, dword [esp + 0x18]
jl 0x4ab8a0
jmp 0x4ab9cb
mov ebp, dword [esp + 0x14c]
sub edx, edi
mov ecx, dword [ebp + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x4ab94b
mov eax, dword [ebp + 0x88]
mov esi, ecx
mov dword [esp + 0x1c], esi
test eax, eax
je 0x4ab9cb
cmp esi, dword [ebp + 0x84]
jbe 0x4ab9cb
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
jmp 0x4ab9cb
add esi, edx
mov dword [esp + 0x1c], esi
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
nop dword [eax]
mov ecx, esi
cmp esi, edx
jae 0x4ab9e6
mov al, byte [esi]
cmp al, 0xd
jne 0x4ab991
inc esi
mov dword [esp + 0x1c], esi
cmp esi, edx
jae 0x4ab9c4
cmp byte [esi], 0xa
cmovne esi, ecx
jmp 0x4ab9b6
cmp al, 0xa
je 0x4ab9b6
mov ecx, dword [esp + 0x14c]
cmp dword [ecx + 0x64], 0
jne 0x4abcc0
cmp al, 0xb
je 0x4ab9b6
cmp al, 0xc
je 0x4ab9b6
cmp al, 0x85
jne 0x4abcc0
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4ab970
mov dword [esp + 0x1c], esi
mov ebp, dword [esp + 0x14c]
cmp dword [esp + 0x28], 0
je 0x4ac803
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
jmp 0x4a92fc
mov ebp, dword [esp + 0x14c]
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4ab9cb
cmp esi, dword [ebp + 0x84]
jbe 0x4ab9cb
mov dword [ebp + 0x60], 1
cmp eax, 1
jg 0x4aca9d
jmp 0x4ab9cb
mov ebp, dword [esp + 0x14c]
cmp edi, edx
jge 0x4ab9cb
mov ecx, dword [ebp + 0x78]
nop
cmp esi, ecx
jae 0x4ab9ed
mov al, byte [esi]
cmp al, 9
je 0x4ab9cb
cmp al, 0x20
je 0x4ab9cb
cmp al, 0xa0
je 0x4ab9cb
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4aba20
jmp 0x4ab9cb
mov ebp, dword [esp + 0x14c]
cmp edi, edx
jge 0x4ab9cb
mov ecx, dword [ebp + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4ab9ed
mov al, byte [esi]
cmp al, 9
je 0x4aba66
cmp al, 0x20
je 0x4aba66
cmp al, 0xa0
jne 0x4ab9cb
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4aba50
jmp 0x4ab9cb
mov ebp, dword [esp + 0x14c]
cmp edi, edx
jge 0x4ab9cb
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x4ab9ed
mov al, byte [esi]
cmp al, 0xa
je 0x4ab9cb
cmp al, 0xb
je 0x4ab9cb
cmp al, 0xc
je 0x4ab9cb
cmp al, 0xd
je 0x4ab9cb
cmp al, 0x85
je 0x4ab9cb
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4aba87
jmp 0x4ab9cb
mov ebp, dword [esp + 0x14c]
cmp edi, edx
jge 0x4ab9cb
mov ecx, dword [ebp + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x4ab9ed
mov al, byte [esi]
cmp al, 0xa
je 0x4abb02
cmp al, 0xb
je 0x4abb02
cmp al, 0xc
je 0x4abb02
cmp al, 0xd
je 0x4abb02
cmp al, 0x85
jne 0x4ab9cb
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, edx
jl 0x4abae0
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
jne 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abb27
mov ebp, eax
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
je 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abb70
mov ebp, eax
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
jne 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abbb6
mov ebp, eax
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
je 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abc00
mov ebp, eax
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
jne 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abc46
mov ebp, eax
jmp 0x4ab9cb
cmp edi, edx
jge 0x4ab9c4
mov eax, dword [esp + 0x14c]
mov ebp, dword [esp + 0x18]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4ab9e6
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
je 0x4ab9c4
mov eax, dword [esp + 0x14c]
inc esi
inc edi
mov dword [esp + 0x1c], esi
cmp edi, ebp
jl 0x4abc90
mov ebp, eax
jmp 0x4ab9cb
mov ebp, ecx
jmp 0x4ab9cb
cmp al, 0x74
mov eax, dword [esp + 0x154]
jne 0x4abd07
inc eax
push eax
push dword [esp + 0x154]
push edx
push ecx
push dword [esp + 0x154]
lea edx, [edi + 3]
mov ecx, esi
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov edx, ebp
mov ebp, dword [esp + 0x14c]
jmp 0x4abf0f
inc eax
mov dword [edx + 0x98], 2
push eax
push dword [esp + 0x154]
push edx
push ecx
push dword [esp + 0x154]
mov edx, ebp
mov ecx, esi
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x14c]
add edx, 3
jmp 0x4abf0f
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esp + 0x148]
cmovle eax, dword [esp + 0x148]
movzx ecx, byte [edx + 4]
mov ebx, eax
movzx eax, byte [edx + 5]
add edx, 3
shl ecx, 8
or ecx, eax
mov dword [esp + 0x148], ebx
add edx, ecx
cmp byte [edx], 0x71
jne 0x4abda7
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4abd83
jmp 0x4abda7
mov ebp, dword [esp + 0x14c]
mov ebx, dword [esp + 0x148]
add edx, 3
cmp byte [esp + 0x23], 0x86
mov dword [esp + 0x14], edx
jne 0x4abf13
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
mov dword [ebp + 0x98], 2
push eax
push dword [esp + 0x154]
push ebp
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp al, 0x75
je 0x4ac147
cmp al, 0x74
jne 0x4abe4c
mov eax, dword [esp + 0x154]
add edx, 3
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
push edi
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov al, byte [ebp]
mov edx, ebp
cmp al, 0x7b
je 0x4ac115
cmp al, 0x82
jae 0x4ac0dd
mov ebp, dword [esp + 0x14c]
jmp 0x4abf0f
cmp byte [ebp], 0x82
jb 0x4abe5c
mov dword [edi + 0x98], 2
mov eax, dword [esp + 0x154]
mov edx, ebp
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
push edi
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
cmp eax, 0xfffffc1c
jne 0x4abe90
cmp dword [edi + 0xb4], ebp
jmp 0x4abe92
test eax, eax
jne 0x4abf28
mov edx, dword [esp + 0x14]
add edx, 3
cmp byte [ebp], 0x7b
mov dword [esp + 0x14], edx
je 0x4ac115
mov ebp, dword [esp + 0x14c]
jmp 0x4abf13
mov edi, dword [esp + 0x14]
movzx edx, byte [edx + 3]
shl edx, 8
movzx eax, byte [edi + 4]
or edx, eax
mov dword [esp + 0x2c], edx
lea eax, [edx + edx]
mov dword [esp + 0x34], eax
cmp eax, dword [ebp + 0x14]
jl 0x4acaad
mov edx, edi
nop dword [eax]
cmp bl, 0x82
jae 0x4abf33
cmp bl, 0x7b
je 0x4abf33
cmp dword [ebp + 0x68], 0
jne 0x4abf3d
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x71
je 0x4abf3d
movzx eax, byte [edx]
movzx eax, byte [eax + 0x4d48b0]
add edx, eax
mov dword [esp + 0x14], edx
mov eax, dword [ebp]
cmp eax, dword [ebp + 4]
jb 0x4a92a0
inc eax
mov dword [ebp], eax
mov eax, 0xfffffff8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, esi
mov ebx, dword [ebp + 0xac]
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [edx]
push ebp
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d48b0]
push dword [esp + 0x154]
add edx, dword [esp + 0x28]
call fcn.004a9230
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc20
jne 0x4abfb0
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
cmp dword [ebp + 0x7c], edx
jae 0x4acc4e
cmp byte [eax], 0x71
je 0x4abfb8
cmp byte [edx], 0x71
jne 0x4acc4e
jmp 0x4abfb8
test edi, edi
jne 0x4acc03
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp + 0xac], ebx
add edx, ecx
mov dword [esp + 0x14], edx
cmp byte [edx], 0x71
jne case.0x4ac932.14
mov bl, byte [esp + 0x23]
jmp case.0x4a932c.123
mov eax, dword [esp + 0x154]
movzx edx, byte [edx + 1]
inc eax
mov ebx, dword [esp + 0x14]
push eax
push dword [esp + 0x154]
movzx eax, byte [ecx + 0x4d48b0]
mov ecx, esi
push ebp
push edi
push dword [esp + 0x154]
add eax, ebx
add edx, eax
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac033
cmp eax, 0xfffffc1d
je 0x4ac033
cmp eax, 0xfffffc20
jne 0x4abf28
lea eax, [ebx + 2]
mov dword [ebp + 0x7c], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, 0xffffffe6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0xc8]
cmp eax, ecx
je 0x4ac071
push eax
call fcn.004b2343
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0xc8]
mov dword [ebp + 0xa4], edx
cmp eax, ecx
je case.0x4ac932.14
push eax
call fcn.004b2343
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, 0xfffffffa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x144]
mov dword [edi + 0x7c], eax
mov eax, 1
mov dword [edi + 0x80], esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
mov dword [edi + 0x98], 2
push eax
push dword [esp + 0x154]
push edi
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edi
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac18e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov dword [edi + 0x80], esi
mov eax, 0xfffffc1b
mov dword [edi + 0x8c], ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edi
push ebx
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov dword [edi + 0xb4], ebp
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x14c]
mov ecx, dword [esp + 0x144]
mov dword [eax + 0x80], esi
mov dword [eax + 0x8c], edi
mov dword [eax + 0x7c], ecx
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x4ac932.14
cmp esi, dword [ebp + 0x84]
jbe case.0x4ac932.14
mov dword [ebp + 0x60], 1
jmp 0x4aca94
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.0x4ac932.14
cmp esi, dword [ecx + 0x78]
jb case.0x4ac932.14
cmp esi, dword [ecx + 0x84]
jbe case.0x4ac932.14
mov dword [ecx + 0x60], 1
jmp 0x4aca94
cmp dword [esp + 0x30], 0
je 0x4ac2ef
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x24]
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov edi, dword [esp + 0x28]
nop word [eax + eax]
cmp ebx, dword [esp + 0x18]
jge case.0x4ac932.14
push dword [esp + 0x2c]
mov edx, esi
mov ecx, edi
push dword [esp + 0x150]
push ebp
call fcn.004a91a0
add esp, 0xc
test eax, eax
js 0x4ac1f7
mov edx, dword [esp + 0x24]
add esi, eax
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
inc ebx
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac280
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edi, esi
cmp ebx, eax
jge 0x4ac360
nop dword [eax]
push edx
push dword [esp + 0x150]
mov edx, esi
push ebp
call fcn.004a91a0
add esp, 0xc
test eax, eax
js 0x4ac32a
mov ecx, dword [esp + 0x28]
inc ebx
mov edx, dword [esp + 0x2c]
add esi, eax
cmp ebx, dword [esp + 0x18]
jl 0x4ac300
jmp 0x4ac358
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4ac358
cmp esi, dword [ecx + 0x78]
jb 0x4ac358
cmp esi, dword [ecx + 0x84]
jbe 0x4ac358
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4aca9d
cmp esi, edi
jb case.0x4ac932.14
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x24]
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
sub esi, ebp
cmp esi, edi
jae 0x4ac360
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebx + 0x88]
test eax, eax
je case.0x4ac932.14
cmp esi, dword [ebx + 0x78]
jb case.0x4ac932.14
jmp 0x4aca81
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.0x4ac932.14
jmp 0x4ac215
mov edi, esi
cmp ebx, dword [esp + 0x18]
jge 0x4ac452
mov ecx, dword [esp + 0x14c]
mov ebp, dword [ecx + 0x78]
cmp esi, ebp
jae 0x4ac421
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [esp + 0x2c]
test byte [edx + ecx], al
je 0x4ac44a
inc ebx
inc esi
cmp ebx, dword [esp + 0x18]
jl 0x4ac3f8
jmp 0x4ac44a
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4ac44a
cmp esi, dword [ecx + 0x84]
jbe 0x4ac44a
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4aca9d
cmp esi, edi
jb case.0x4ac932.14
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
dec esi
cmp esi, edi
jae 0x4ac452
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp esi, eax
jb case.0x4ac932.14
mov edi, dword [esp + 0x18]
nop dword [eax]
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
dec esi
test eax, eax
jne 0x4abf28
cmp esi, edi
jae 0x4ac4b0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push dword [esp + 0x154]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov ebp, dword [esp + 0x18]
nop
cmp edi, ebp
jge case.0x4ac932.14
mov edx, dword [esp + 0x14c]
cmp esi, dword [edx + 0x78]
jae 0x4ac595
mov cl, byte [esi]
movzx eax, cl
cmp ebx, eax
je 0x4ac557
cmp byte [esp + 0x23], cl
jne case.0x4ac932.14
mov eax, dword [esp + 0x154]
inc esi
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
inc edi
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac530
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.0x4ac932.14
cmp esi, dword [edx + 0x84]
jbe case.0x4ac932.14
mov dword [edx + 0x60], 1
jmp 0x4aca94
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
cmp edi, ebp
jge case.0x4ac932.14
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4ac3cf
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.0x4ac932.14
mov eax, dword [esp + 0x154]
inc edi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push dword [esp + 0x154]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac5f2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp esi, eax
jb case.0x4ac932.14
mov edi, dword [esp + 0x18]
nop
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
dec esi
cmp esi, edi
jae 0x4ac660
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
mov ebp, dword [esp + 0x18]
cmp edi, ebp
jge case.0x4ac932.14
mov edx, dword [esp + 0x14c]
cmp esi, dword [edx + 0x78]
jae 0x4ac595
mov cl, byte [esi]
movzx eax, cl
cmp ebx, eax
je case.0x4ac932.14
cmp byte [esp + 0x23], cl
je case.0x4ac932.14
mov eax, dword [esp + 0x154]
inc esi
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
inc edi
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac6e4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
cmp edi, ebp
jge case.0x4ac932.14
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4ac3cf
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.0x4ac932.14
mov eax, dword [esp + 0x154]
inc edi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push dword [esp + 0x154]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac788
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [eax + 0x88]
test eax, eax
je case.0x4ac932.14
mov ecx, dword [esp + 0x14c]
jmp 0x4ac215
cmp esi, ebx
jb case.0x4ac932.14
nop dword [eax + eax]
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ebp
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
dec esi
cmp byte [esp + 0x23], 0x11
jne 0x4ac860
cmp esi, ebx
jbe 0x4ac862
cmp byte [esi], 0xa
jne 0x4ac860
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
cmove esi, eax
cmp esi, ebx
jae 0x4ac810
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
push ebx
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
jne 0x4abf28
cmp edi, dword [esp + 0x18]
jge case.0x4ac932.14
mov eax, dword [ebx + 0x78]
cmp esi, eax
jae 0x4aca73
cmp byte [esp + 0x23], 0xc
jne 0x4ac908
mov edx, dword [ebx + 0x18]
lea ecx, [ebx + 0x1c]
test edx, edx
je 0x4ac8e4
push 0
push ecx
push eax
mov ecx, esi
call fcn.004ae3f0
add esp, 0xc
test eax, eax
jne case.0x4ac932.14
jmp 0x4ac908
mov ecx, dword [ecx]
sub eax, ecx
cmp esi, eax
ja 0x4ac908
mov al, byte [esi]
cmp al, byte [ebx + 0x2c]
jne 0x4ac908
cmp ecx, 1
je case.0x4ac932.14
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x2d]
je case.0x4ac932.14
movzx ecx, byte [esi]
lea eax, [ebp - 6]
inc esi
cmp eax, 0xf
ja case.0x4ac918.15
jmp dword [eax*4 + 0x4ad2fc]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x4ac932.14
movzx eax, byte [ecx + 0x4ad34c]
jmp dword [eax*4 + 0x4ad33c]
cmp esi, dword [ebx + 0x78]
jae case.0x4ac918.12
cmp byte [esi], 0xa
jne case.0x4ac918.12
inc esi
jmp case.0x4ac918.12
cmp dword [ebx + 0x64], 0
jne case.0x4ac932.14
jmp case.0x4ac918.12
cmp ecx, 9
je case.0x4ac932.14
cmp ecx, 0x20
je case.0x4ac932.14
cmp ecx, 0xa0
jmp 0x4aca1c
cmp ecx, 9
je case.0x4ac918.12
cmp ecx, 0x20
je case.0x4ac918.12
cmp ecx, 0xa0
jne case.0x4ac932.14
jmp case.0x4ac918.12
cmp ecx, 0xa
jb case.0x4ac918.12
cmp ecx, 0xd
jbe case.0x4ac932.14
cmp ecx, 0x85
jmp 0x4aca1c
cmp ecx, 0xa
jb case.0x4ac932.14
cmp ecx, 0xd
jbe case.0x4ac918.12
cmp ecx, 0x85
jne case.0x4ac932.14
jmp case.0x4ac918.12
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 4
jne case.0x4ac932.14
jmp case.0x4ac918.12
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 4
jmp 0x4aca1c
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 1
jne case.0x4ac932.14
jmp case.0x4ac918.12
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 1
jmp 0x4aca1c
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 0x10
jne case.0x4ac932.14
jmp case.0x4ac918.12
mov eax, dword [ebx + 0x38]
test byte [ecx + eax], 0x10
je case.0x4ac932.14
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
inc edi
push ebx
push dword [esp + 0x154]
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ac8a6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, 0xfffffff2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebx + 0x88]
test eax, eax
je case.0x4ac932.14
cmp esi, dword [ebx + 0x84]
jbe case.0x4ac932.14
mov dword [ebx + 0x60], 1
cmp eax, 1
jle case.0x4ac932.14
mov eax, 0xfffffff4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x10]
sub eax, edx
mov dword [esp + 0x38], ebx
mov edx, dword [esp + 0x14c]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov ebx, dword [ebp + 0x90]
mov ebp, dword [ebp + 0xac]
mov dword [esp + 0x18], eax
mov eax, esi
sub eax, dword [edx + 0x74]
mov dword [ecx], eax
cmp byte [esp + 0x23], 0x82
jb 0x4acaf8
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [edi]
push edx
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d48b0]
push dword [esp + 0x154]
add edx, edi
call fcn.004a9230
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1c
je 0x4acbbe
cmp edi, 0xfffffc20
jne 0x4acb7c
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov eax, dword [esp + 0x14c]
cmp dword [eax + 0x7c], edx
jae 0x4acbf6
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
je 0x4acb78
cmp byte [edx], 0x71
jne 0x4acbf6
xor edi, edi
jmp 0x4acb88
test edi, edi
jne 0x4acbf6
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
mov dword [edx + 0x90], ebx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [edx + 0xac], ebp
mov eax, dword [esp + 0x14]
add eax, ecx
mov dword [esp + 0x14], eax
cmp byte [eax], 0x71
jne 0x4acbc5
mov edi, eax
jmp 0x4acae7
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x14c]
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx + 0xc]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [ebx + 0x10]
sub ecx, dword [esp + 0x2c]
mov eax, dword [ebx + 0xc]
mov edx, dword [esp + 0x18]
mov dword [eax + ecx*4], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp edi, 0xfffffc1c
jne 0x4acc4e
mov edx, dword [esp + 0x14]
mov al, byte [edx]
cmp al, 0x7b
je 0x4acc43
cmp al, 0x71
jne 0x4acc34
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4acc20
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
xor eax, eax
cmp dword [ebp + 0xb4], edx
cmove edi, eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
lea edi, [edx + 2]
inc eax
mov dword [ebp + 0xb0], edi
push eax
push dword [esp + 0x154]
mov dword [ebp + 0xac], 0
mov ecx, esi
movzx eax, byte [edx]
movzx edx, byte [edx + 1]
push ebp
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d48b0]
add eax, dword [esp + 0x24]
push dword [esp + 0x154]
add edx, eax
call fcn.004a9230
mov edx, eax
add esp, 0x14
cmp edx, 1
je 0x4accba
cmp edx, 0xfffffc19
jne 0x4accd6
cmp dword [ebp + 0xac], 0
jne 0x4accd6
mov dword [ebp + 0xac], edi
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp edx, 0xfffffc1f
jne 0x4acd0e
mov eax, dword [ebp + 0x7c]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x4acd01
test cl, cl
je 0x4accfd
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x4acd01
add edi, 2
add eax, 2
test cl, cl
jne 0x4acce1
xor eax, eax
jmp 0x4acd06
sbb eax, eax
or eax, 1
test eax, eax
je 0x4ace97
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
movzx edx, byte [ecx + 0x4d48b0]
inc eax
add edx, dword [esp + 0x14]
mov ecx, esi
push eax
push dword [esp + 0x154]
push ebp
push edi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4acd6d
cmp eax, 0xfffffc1d
je 0x4acd6d
cmp eax, 0xfffffc1e
je 0x4acd6d
cmp eax, 0xfffffc1f
je 0x4acd6d
cmp eax, 0xfffffc20
jne 0x4abf28
mov eax, 0xfffffc1a
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
movzx edx, byte [ecx + 0x4d48b0]
inc eax
add edx, dword [esp + 0x14]
mov ecx, esi
push eax
push dword [esp + 0x154]
push ebp
push edi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ace43
cmp eax, 0xfffffc20
je 0x4ace43
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
lea edi, [edx + 2]
inc eax
mov dword [ebp + 0xb0], edi
push eax
push dword [esp + 0x154]
mov dword [ebp + 0xac], 0
mov ecx, esi
movzx eax, byte [edx]
movzx edx, byte [edx + 1]
push ebp
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d48b0]
add eax, dword [esp + 0x24]
push dword [esp + 0x154]
add edx, eax
call fcn.004a9230
add esp, 0x14
cmp eax, 1
je 0x4ace25
cmp eax, 0xfffffc19
jne 0x4ace34
cmp dword [ebp + 0xac], 0
jne 0x4ace34
mov dword [ebp + 0xac], edi
test eax, eax
je 0x4ace43
cmp eax, 0xfffffc20
jne 0x4abf28
mov eax, 0xfffffc1d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
movzx edx, byte [ecx + 0x4d48b0]
inc eax
add edx, dword [esp + 0x14]
mov ecx, esi
push eax
push dword [esp + 0x154]
push ebp
push edi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4ace97
cmp eax, 0xfffffc1d
je 0x4ace97
cmp eax, 0xfffffc20
jne 0x4abf28
mov dword [ebp + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
movzx edx, byte [ecx + 0x4d48b0]
inc eax
add edx, dword [esp + 0x14]
mov ecx, esi
push eax
push dword [esp + 0x154]
push ebp
push edi
push dword [esp + 0x154]
call fcn.004a9230
add esp, 0x14
test eax, eax
je 0x4acf5e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
lea edi, [edx + 2]
inc eax
mov dword [ebp + 0xb0], edi
push eax
push dword [esp + 0x154]
mov dword [ebp + 0xac], 0
mov ecx, esi
movzx eax, byte [edx]
movzx edx, byte [edx + 1]
push ebp
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d48b0]
add eax, dword [esp + 0x24]
push dword [esp + 0x154]
add edx, eax
call fcn.004a9230
add esp, 0x14
cmp eax, 1
je 0x4acf47
cmp eax, 0xfffffc19
jne 0x4acf56
cmp dword [ebp + 0xac], 0
jne 0x4acf56
mov dword [ebp + 0xac], edi
test eax, eax
jne 0x4abf28
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x7c], eax
mov eax, 0xfffffc20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [esp + 0x144]
cmp esi, edx
jne 0x4acfb2
cmp ecx, 0x99
je 0x4acfb2
cmp dword [ebp + 0xa4], 0
jne 0x4acfb2
cmp dword [ebp + 0x58], 0
jne case.0x4ac932.14
cmp dword [ebp + 0x5c], 0
je 0x4acfb2
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp edx, eax
je case.0x4ac932.14
test bl, bl
mov dword [ebp + 0x80], esi
mov eax, 0xfffffc19
mov dword [ebp + 0x8c], edi
mov ecx, 1
mov dword [ebp + 0x7c], edx
cmove eax, ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x130
ret