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

Disassembly:
sub esp, 0x130
push ebx
push ebp
push esi
mov ebp, edx
mov esi, ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], esi
push edi
test ebp, ebp
jne 0x4ad95e
cmp dword [esp + 0x154], edx
jne 0x4ad943
push 1
push edx
push edx
push edx
push edx
lea ecx, [esp + 0x168]
call fcn.004ad900
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 edx, dword [esp + 0x14c]
mov eax, dword [edx]
cmp eax, dword [edx + 4]
jae 0x4b09a0
inc eax
mov dword [edx], eax
mov eax, dword [esp + 0x154]
cmp eax, dword [edx + 8]
jae 0x4b187c
cmp dword [edx + 0x98], 2
jne 0x4ad9cb
mov ecx, dword [esp + 0x150]
lea eax, [esp + 0x50]
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x150], eax
mov dword [edx + 0x98], 0
jmp 0x4ad9cb
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x14]
jmp 0x4ad9d2
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov cl, byte [ebp]
movzx ebp, cl
mov dword [esp + 0x30], 0
mov dword [esp + 0x20], 0
mov byte [esp + 0x27], cl
mov dword [esp + 0x34], ebp
cmp ebp, 0x9b
ja case.0x4ada0a.15
movzx eax, byte [ebp + 0x4b19c4]
jmp dword [eax*4 + 0x4b188c]
cmp dword [edx + 0x6c], 0
je 0x4b0a6a
mov ebx, dword [esp + 0x14]
movzx ecx, byte [ebp + 0x4d96a8]
movzx ebp, byte [ebx + 1]
add ebp, ebx
add ebp, ecx
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
mov ecx, dword [esp + 0x14]
mov ebx, esi
mov edi, dword [edx + 0xac]
mov ebp, ecx
mov eax, dword [esp + 0x154]
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
lea edx, [ecx + 3]
mov ecx, esi
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
cmp eax, 1
je 0x4adb4d
cmp eax, 0xfffffc20
jne 0x4adab1
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 0x4b09a8
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0x71
je 0x4adab9
cmp byte [edx], 0x71
jmp 0x4adab3
test eax, eax
jne 0x4b09a8
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 ecx, dword [esp + 0x14]
mov dword [edx + 0xac], edi
mov al, byte [ecx]
cmp al, 0x71
je 0x4ada42
mov edi, ecx
cmp al, 0x7c
je 0x4adb00
cmp al, 0x71
jne case.default.0x4af099
nop dword [eax]
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 0x4adb00
mov ecx, dword [edx + 0x8c]
mov esi, dword [edx + 0x80]
mov dword [esp + 0x14], edi
mov dword [esp + 0x148], ecx
mov dword [esp + 0x18], esi
cmp al, 0x72
je 0x4adb3d
cmp esi, ebx
jne 0x4b06a8
mov ebp, dword [esp + 0x14]
add ebp, 3
mov dword [esp + 0x14], ebp
jmp 0x4ad9cb
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 0x4adaed
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], 0
jmp 0x4ae766
mov ebp, dword [esp + 0x14]
movzx ebx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ebx, 8
or ebx, eax
cmp byte [ebp + 3], 0x70
jne 0x4adc7c
mov edi, dword [0x4ecf84]
test edi, edi
je 0x4adc75
movzx eax, byte [ebp + 4]
mov ecx, dword [edx + 0x74]
mov dword [esp + 0x94], eax
mov eax, dword [edx + 0xc]
mov dword [esp + 0x98], eax
mov eax, dword [edx + 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 [ebp + 5]
mov dword [esp + 0xa8], eax
movzx eax, byte [ebp + 6]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp + 8]
mov dword [esp + 0xb8], ecx
movzx ecx, byte [ebp + 7]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov dword [esp + 0xbc], ecx
mov ecx, dword [esp + 0x14c]
sar eax, 1
mov dword [esp + 0xac], eax
mov eax, dword [ecx + 0x90]
mov dword [esp + 0xb0], eax
mov eax, dword [ecx + 0xa8]
mov dword [esp + 0xb4], eax
mov eax, dword [ecx + 0xb0]
mov dword [esp + 0xc0], eax
lea eax, [esp + 0x90]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x4af099
js 0x4b09a8
add ebp, 0xa
mov dword [esp + 0x14], ebp
mov cl, byte [ebp + 3]
lea edx, [ebp + 3]
cmp cl, 0x89
je 0x4adec0
cmp cl, 0x8a
je 0x4adec0
cmp cl, 0x87
je 0x4add0d
cmp cl, 0x88
je 0x4add0d
cmp cl, 0x8b
jne 0x4adcb7
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
jmp 0x4ae0ce
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edi, dword [esp + 0x14c]
inc eax
push eax
push 0
push edi
push dword [esp + 0x154]
mov dword [edi + 0x98], 1
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
cmp eax, 1
je 0x4b0729
test eax, eax
je 0x4add04
cmp eax, 0xfffffc20
jne 0x4b09a8
add ebp, ebx
mov edx, edi
jmp 0x4ae0d5
movzx edx, byte [ebp + 4]
movzx eax, byte [ebp + 5]
shl edx, 8
or edx, eax
lea edi, [edx + edx]
cmp edi, dword [esp + 0x148]
jge 0x4add3a
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
cmp dword [eax + edi*4], 0
jge 0x4adeb3
cmp cl, 0x88
jne 0x4add84
mov eax, dword [esp + 0x14c]
xor edi, edi
mov dword [esp + 0x28], edi
mov ebp, dword [eax + 0x28]
mov ebx, ebp
cmp dword [eax + 0x20], edi
jle 0x4add80
movzx ecx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esp + 0x2c], eax
movzx eax, byte [eax]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14c]
cmp ecx, edx
je 0x4add98
add ebx, dword [eax + 0x24]
inc edi
mov dword [esp + 0x28], edi
cmp edi, dword [eax + 0x20]
jl 0x4add56
mov ebp, dword [esp + 0x14]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
xor eax, eax
jmp 0x4ae0c8
cmp edi, dword [eax + 0x20]
jge 0x4add80
mov edi, ebx
cmp ebx, ebp
jbe 0x4ade18
mov ebp, dword [eax + 0x24]
lea eax, [ebx + 2]
nop dword [eax]
sub edi, ebp
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4addd5
test dl, dl
je 0x4addd1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4addd5
add eax, 2
add ecx, 2
test dl, dl
jne 0x4addb5
xor eax, eax
jmp 0x4addda
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4ade18
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x148]
jge 0x4ade09
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4adeaf
mov eax, dword [esp + 0x14c]
cmp edi, dword [eax + 0x28]
lea eax, [ebx + 2]
ja 0x4addb0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x14c]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [edi + 0x20]
jge 0x4add80
mov edi, dword [edi + 0x24]
mov ebp, dword [esp + 0x2c]
add ebp, edi
lea eax, [ebx + 2]
lea ecx, [ebp + 1]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4ade60
test dl, dl
je 0x4ade5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4ade60
add eax, 2
add ecx, 2
test dl, dl
jne 0x4ade40
xor eax, eax
jmp 0x4ade65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4add80
movzx ecx, byte [ebp - 1]
movzx eax, byte [ebp]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x148]
jge 0x4ade95
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4adeaf
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x14c]
inc edx
mov dword [esp + 0x28], edx
cmp edx, dword [eax + 0x20]
jl 0x4ade38
jmp 0x4add80
mov ebp, dword [esp + 0x14]
mov ecx, 3
lea eax, [ecx - 2]
jmp 0x4ae0c8
mov edx, dword [esp + 0x14c]
mov edi, dword [edx + 0xa4]
test edi, edi
jne 0x4adee5
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
jmp 0x4ae0d5
movzx edx, byte [ebp + 4]
movzx eax, byte [ebp + 5]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x4ae0b1
cmp edx, dword [edi + 4]
je 0x4ae0b1
mov dword [esp + 0x1c], 0
cmp cl, 0x8a
jne 0x4adf62
mov eax, dword [esp + 0x14c]
xor edi, edi
mov dword [esp + 0x28], edi
mov ebp, dword [eax + 0x28]
mov ebx, ebp
mov dword [esp + 0x2c], ebx
cmp dword [eax + 0x20], edi
jle 0x4adf5e
nop
movzx ecx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esp + 0x30], eax
movzx eax, byte [eax]
shl ecx, 8
or ecx, eax
cmp ecx, edx
je 0x4adf74
mov eax, dword [esp + 0x14c]
inc edi
mov dword [esp + 0x28], edi
add ebx, dword [eax + 0x24]
mov dword [esp + 0x2c], ebx
cmp edi, dword [eax + 0x20]
jl 0x4adf30
mov ebp, dword [esp + 0x14]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
jmp 0x4ae0c4
mov ecx, dword [esp + 0x14c]
cmp edi, dword [ecx + 0x20]
jge 0x4adf5e
mov edi, ebx
cmp ebx, ebp
jbe 0x4ae00d
mov esi, ecx
lea eax, [ebx + 2]
mov dword [esp + 0x34], eax
mov ebx, eax
mov ebp, dword [esi + 0x24]
sub edi, ebp
mov eax, ebx
lea ecx, [edi + 2]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4adfc0
test dl, dl
je 0x4adfbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4adfc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4adfa0
xor eax, eax
jmp 0x4adfc5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4adff2
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 + 0x1c], edx
je 0x4adff6
cmp edi, dword [esi + 0x28]
ja 0x4adf98
jmp 0x4adff6
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x2c]
test edx, edx
jne 0x4ae0bb
mov ecx, dword [esp + 0x14c]
mov eax, dword [esp + 0x28]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [ecx + 0x20]
jge 0x4adf5e
mov edi, dword [ecx + 0x24]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x14c]
nop dword [eax]
add ebp, edi
lea eax, [ebx + 2]
lea ecx, [ebp + 1]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4ae058
test dl, dl
je 0x4ae054
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4ae058
add eax, 2
add ecx, 2
test dl, dl
jne 0x4ae038
xor eax, eax
jmp 0x4ae05d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4ae092
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 + 0x1c], edx
je 0x4ae096
mov edx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x28], edx
cmp edx, dword [esi + 0x20]
jl 0x4ae030
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
test edx, edx
jne 0x4ae0bf
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
jmp 0x4ae0c4
mov dword [esp + 0x1c], 1
jmp 0x4ae0bf
mov ebp, dword [esp + 0x14]
mov ecx, 3
mov eax, dword [esp + 0x1c]
add ebp, ecx
test eax, eax
jne 0x4ae0df
mov edx, dword [esp + 0x14c]
cmp byte [ebp], 0x71
jne 0x4adb41
mov edx, dword [esp + 0x148]
mov edi, dword [esp + 0x14c]
add ebp, 3
cmp byte [esp + 0x27], 0x86
mov dword [esp + 0x14], ebp
je 0x4b0acd
mov edx, dword [esp + 0x14c]
jmp 0x4b0995
mov ebp, dword [esp + 0x14]
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x14c]
lea edi, [edx + edx]
mov dword [eax + 0x90], edx
cmp edi, dword [eax + 0x14]
jl 0x4ae14d
mov edi, dword [esp + 0x148]
mov edx, eax
add ebp, 3
mov dword [esp + 0x14], ebp
mov dword [edx + 0x3c], 1
jmp 0x4ad9d9
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [esp + 0x14c]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edi*4], eax
mov ecx, esi
mov eax, dword [edx + 0xc]
sub ecx, dword [edx + 0x74]
mov dword [eax + edi*4 + 4], ecx
cmp dword [esp + 0x148], edi
jg 0x4ae181
lea eax, [edi + 2]
mov dword [esp + 0x148], eax
mov edi, dword [esp + 0x148]
add ebp, 3
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp dword [edx + 0x98], 1
mov edi, dword [edx + 0xac]
jne 0x4ae1b4
mov ebx, 1
mov dword [edx + 0x98], 0
jmp 0x4ae1b6
xor ebx, ebx
mov ebp, dword [esp + 0x14]
nop word [eax + eax]
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push 0
push edx
push dword [esp + 0x154]
lea edx, [ebp + 3]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
cmp eax, 1
je 0x4ae227
cmp eax, 0xfffffc19
je 0x4ae227
test eax, eax
je 0x4ae202
cmp eax, 0xfffffc20
jne 0x4b09a8
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
mov edx, dword [esp + 0x14c]
shl ecx, 8
or ecx, eax
add ebp, ecx
mov dword [edx + 0xac], edi
mov al, byte [ebp]
cmp al, 0x71
je 0x4ae1c0
jmp 0x4ae23b
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x7c]
mov dword [esp + 0x144], eax
mov al, byte [ebp]
cmp al, 0x72
je case.default.0x4af099
test ebx, ebx
jne 0x4b0ca7
nop dword [eax + eax]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4ae250
mov edi, dword [edx + 0x8c]
add ebp, 3
mov dword [esp + 0x14], ebp
mov dword [esp + 0x148], edi
jmp 0x4ad9d2
cmp dword [edx + 0x98], 1
mov edi, dword [edx + 0xac]
jne 0x4ae29e
mov ebx, 1
mov dword [edx + 0x98], 0
jmp 0x4ae2a0
xor ebx, ebx
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push 0
push edx
push dword [esp + 0x154]
lea edx, [ebp + 3]
push dword [esp + 0x154]
call fcn.004ad900
mov edx, dword [esp + 0x160]
add esp, 0x14
mov dword [edx + 0xac], edi
cmp eax, 1
je case.default.0x4af099
cmp eax, 0xfffffc19
je case.default.0x4af099
cmp eax, 0xfffffc1e
je 0x4ae330
cmp eax, 0xfffffc1d
je 0x4ae330
cmp eax, 0xfffffc1a
je 0x4ae330
test eax, eax
je 0x4ae310
cmp eax, 0xfffffc20
jne 0x4b09a8
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4ae2a4
jmp 0x4ae345
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4ae330
test ebx, ebx
jne 0x4b0ca7
add ebp, 3
mov dword [esp + 0x14], ebp
jmp 0x4ad9cb
mov ebp, dword [esp + 0x14]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
mov dword [esp + 0x18], esi
cmp esi, dword [edx + 0x74]
jb case.default.0x4af099
cmp esi, dword [edx + 0x84]
jae 0x4ae387
mov dword [edx + 0x84], esi
add ebp, 3
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov edi, dword [0x4ecf84]
mov ebp, dword [esp + 0x14]
test edi, edi
je 0x4ae45e
movzx eax, byte [ebp + 1]
mov ecx, dword [edx + 0x74]
mov dword [esp + 0x5c], eax
mov eax, dword [edx + 0xc]
mov dword [esp + 0x60], eax
mov eax, dword [edx + 0x78]
sub eax, ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov eax, ebx
sub eax, ecx
mov dword [esp + 0x58], 2
mov dword [esp + 0x6c], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [ebp + 6]
mov dword [esp + 0x70], eax
movzx eax, byte [ebp + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp + 9]
mov dword [esp + 0x80], ecx
movzx ecx, byte [ebp + 8]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x14c]
sar eax, 1
mov dword [esp + 0x74], eax
mov eax, dword [ecx + 0x90]
mov dword [esp + 0x78], eax
mov eax, dword [ecx + 0xa8]
mov dword [esp + 0x7c], eax
mov eax, dword [ecx + 0xb0]
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 2]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x58]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x4af099
js 0x4b09a8
mov edx, dword [esp + 0x14c]
add ebp, 0xa
mov edi, dword [esp + 0x148]
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov edi, dword [esp + 0x14]
movzx ebx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ebx, 8
or ebx, eax
add ebx, dword [edx + 0x70]
cmp ebx, dword [edx + 0x70]
jne 0x4ae495
xor ecx, ecx
jmp 0x4ae4a2
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [edx + 0xa4]
mov eax, edx
test eax, eax
je 0x4ae4c4
nop
cmp ecx, dword [eax + 4]
jne 0x4ae4be
cmp esi, dword [eax + 0x10]
je 0x4b0b07
mov eax, dword [eax]
test eax, eax
jne 0x4ae4b0
mov ebp, dword [esp + 0x14c]
lea eax, [esp + 0x3c]
mov dword [esp + 0x40], ecx
add edi, 3
mov dword [esp + 0x4c], esi
mov dword [esp + 0x3c], edx
mov ecx, dword [ebp + 0x10]
mov dword [ebp + 0xa4], eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x48], ecx
cmp ecx, 0x1e
jg 0x4ae501
lea eax, [esp + 0xc8]
mov dword [esp + 0x44], eax
jmp 0x4ae521
lea eax, [ecx*4]
push eax
call fcn.004b6720
add esp, 4
mov dword [esp + 0x44], eax
test eax, eax
je 0x4b0b6b
mov ecx, dword [esp + 0x48]
shl ecx, 2
push ecx
push dword [ebp + 0xc]
push eax
call fcn.004b4620
mov al, byte [ebx]
add esp, 0xc
mov byte [esp + 0x27], al
cmp al, 0x82
jb 0x4ae545
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 dword [esp + 0x154]
movzx edx, byte [eax + 0x4d96a8]
push dword [esp + 0x154]
add edx, ebx
call fcn.004ad900
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.004b4620
mov edx, dword [esp + 0x48]
add esp, 0xc
mov dword [ebp + 0xa4], edx
cmp edi, 1
je 0x4ae5e5
cmp edi, 0xfffffc19
je 0x4ae5e5
test edi, edi
je 0x4ae5ba
cmp edi, 0xfffffc20
jne 0x4b0b17
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 0x4b0b3c
mov al, byte [esp + 0x27]
jmp 0x4ae537
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0xc8]
cmp eax, ecx
je 0x4ae5fd
push eax
call fcn.004b6427
add esp, 4
mov edx, ebp
mov esi, dword [edx + 0x80]
mov ebx, dword [edx + 0x7c]
mov dword [esp + 0x18], esi
mov dword [esp + 0x144], ebx
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x148]
jmp 0x4ad9d9
mov ebp, dword [esp + 0x14]
nop word [eax + eax]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4ae630
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov eax, dword [esp + 0x154]
mov ecx, esi
mov edi, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x154]
inc edi
push edx
push dword [esp + 0x154]
mov edx, edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x71
je 0x4ae680
mov edx, dword [esp + 0x14c]
lea ebp, [edi + 3]
mov edi, dword [esp + 0x148]
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
mov edx, ebp
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 0x4ae6c0
mov eax, dword [esp + 0x154]
add edx, 3
inc eax
mov ecx, esi
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
jmp 0x4ad9d9
mov edx, dword [esp + 0x14]
inc edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x4ae713
lea ebp, [edx + 3]
mov edx, dword [esp + 0x14c]
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x2c], 1
mov dword [esp + 0x14], ecx
movzx ebp, byte [ecx]
mov dword [esp + 0x34], ebp
cmp ebp, 0x80
je 0x4ae766
cmp ebp, 0x85
jne 0x4ae94f
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
lea eax, [ebx + ebx]
cmp eax, dword [edx + 0x14]
jge 0x4ae947
sub ecx, dword [edx + 0x70]
xor ebp, ebp
shl eax, 2
mov dword [esp + 0x28], ecx
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x1c], eax
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x30], edx
mov eax, dword [eax + 0x10]
sub eax, ebx
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14c]
mov edi, dword [eax + 0x90]
jmp 0x4ae7c5
mov eax, edx
mov ecx, dword [eax + 0x10]
mov edx, esi
sub edx, dword [eax + 0x74]
sub ecx, ebx
cmp dword [esp + 0x34], 0x82
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x4ae7f0
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 + 0x4d96a8]
push dword [esp + 0x154]
add edx, ecx
mov ecx, esi
call fcn.004ad900
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc1b
jne 0x4ae872
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 + 0x28]
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ecx
jmp 0x4ae7c5
cmp edx, 0xfffffc20
jne 0x4ae8b6
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 0x4ae8a9
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
je 0x4ae8be
cmp byte [ecx], 0x71
je 0x4ae8be
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
test edx, edx
jne 0x4ae8a9
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
mov dword [edx + 0x90], edi
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x14]
add eax, ecx
mov dword [esp + 0x14], eax
cmp byte [eax], 0x71
je 0x4ae7c3
test ebp, ebp
jne 0x4ae920
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14c]
mov edx, dword [esp + 0x30]
mov dword [ecx + eax], edx
mov eax, dword [edi + 0xc]
mov edx, dword [esp + 0x20]
mov dword [ecx + eax + 4], edx
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
sub ecx, ebx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], edx
mov edx, edi
cmp dword [esp + 0x2c], 0
jne 0x4adb3d
test ebp, ebp
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
add ebp, 3
mov dword [esp + 0x14], ebp
jmp 0x4ad9cb
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], 0
mov edi, ecx
xor ebx, ebx
sub edi, dword [edx + 0x70]
cmp ebp, 0x82
jb 0x4ae968
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x154]
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ecx]
push edx
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d96a8]
push dword [esp + 0x154]
add edx, ecx
mov ecx, esi
call fcn.004ad900
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc1b
jne 0x4ae9d5
mov edx, dword [esp + 0x14c]
mov ebx, 1
mov ecx, dword [edx + 0x70]
mov eax, dword [edx + 0x8c]
add ecx, edi
mov esi, dword [edx + 0x80]
mov dword [esp + 0x148], eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ecx
jmp 0x4ae956
cmp edx, 0xfffffc20
jne 0x4aea10
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 0x4ae8a9
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
je 0x4aea18
cmp byte [ecx], 0x71
jmp 0x4aea12
test edx, edx
jne 0x4ae8a9
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, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x14c]
cmp byte [ecx], 0x71
je 0x4ae956
test ebx, ebx
jne 0x4adb3d
cmp dword [esp + 0x2c], ebx
jmp 0x4ae92d
mov ebx, dword [esp + 0x14]
mov ebp, ebx
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
sub ebp, ecx
mov al, byte [ebp]
cmp al, 0x82
jae 0x4aea7c
cmp al, 0x7b
je 0x4aea7c
mov dword [esp + 0x2c], 0
jmp 0x4aea9a
mov ecx, dword [esp + 0x150]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x150]
mov ecx, dword [ecx]
mov dword [esp + 0x150], ecx
cmp al, 0x77
jb 0x4aeaa6
cmp al, 0x7a
jbe 0x4b0c91
cmp al, 0x7c
je 0x4b0c91
cmp al, 0x7f
je 0x4aeac2
cmp al, 0x84
je 0x4aeac2
cmp al, 0x80
je 0x4aeac2
cmp al, 0x85
jne 0x4aeb80
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 0x4aeaec
cmp dword [eax + 4], edx
je 0x4b0b7b
mov dword [edi + 0x90], edx
cmp ebx, dword [edi + 0x14]
jl 0x4aeb09
mov edx, edi
mov edi, dword [esp + 0x148]
mov dword [edx + 0x3c], 1
jmp 0x4aeb7c
mov ecx, dword [esp + 0x148]
cmp ebx, ecx
jle 0x4aeb46
mov eax, dword [edi + 0xc]
mov dword [esp + 0x38], 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 + 0x38]
test ecx, ecx
je 0x4aeb3f
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 edx, dword [esp + 0x14c]
mov edi, dword [esp + 0x148]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [edx + 0xc]
sub ecx, dword [edx + 0x74]
mov dword [eax + ebx*4 + 4], ecx
cmp edi, ebx
jg 0x4aeb7c
lea edi, [ebx + 2]
mov dword [esp + 0x148], edi
mov ebx, dword [esp + 0x14]
mov al, byte [ebx]
cmp al, 0x72
je 0x4aeb90
cmp esi, dword [esp + 0x2c]
jne 0x4b077d
add ebx, 3
cmp byte [ebp], 0x7b
mov dword [esp + 0x14], ebx
je 0x4b0c47
mov ebp, ebx
jmp 0x4ad9d2
cmp dword [edx + 0x40], 0
je case.0x4ada0a.1
cmp esi, dword [edx + 0x74]
je case.default.0x4af099
cmp esi, dword [edx + 0x74]
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp dword [edx + 0x40], 0
je 0x4aebde
cmp esi, dword [edx + 0x74]
je case.default.0x4af099
mov ecx, dword [edx + 0x74]
jmp 0x4aebe9
mov ecx, dword [edx + 0x74]
cmp esi, ecx
je 0x4aec64
cmp esi, dword [edx + 0x78]
je case.default.0x4af099
mov edx, dword [edx + 0x18]
test edx, edx
je 0x4aec2a
cmp esi, ecx
jbe case.default.0x4af099
mov eax, dword [esp + 0x14c]
push 0
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.004b2df0
add esp, 0xc
test eax, eax
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
mov ebx, dword [esp + 0x14c]
mov edx, dword [ebx + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x4af099
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [ebx + 0x2c]
jne case.default.0x4af099
cmp edx, 1
je 0x4aec62
mov al, byte [ecx + 1]
mov edx, ebx
cmp al, byte [edx + 0x2d]
je 0x4aec64
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, ebx
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
mov eax, dword [edx + 0x94]
add eax, dword [edx + 0x74]
cmp esi, eax
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ebp, dword [esp + 0x14]
mov ebx, esi
inc ebp
mov dword [esp + 0x144], ebx
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4aed27
mov edx, dword [edx + 0x18]
test edx, edx
je 0x4aece3
mov eax, dword [esp + 0x14c]
push 0
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.004b2d60
add esp, 0xc
test eax, eax
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
mov ebx, dword [esp + 0x14c]
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja case.default.0x4af099
mov al, byte [esi]
cmp al, byte [ebx + 0x2c]
jne case.default.0x4af099
cmp edx, 1
je 0x4aec62
mov al, byte [esi + 1]
mov edx, ebx
cmp al, byte [edx + 0x2d]
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
cmp dword [edx + 0x44], 0
jne case.default.0x4af099
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4aec64
cmp esi, dword [edx + 0x84]
jbe 0x4aec64
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d2
cmp dword [edx + 0x44], 0
jne case.default.0x4af099
cmp dword [edx + 0x54], 0
je case.0x4ada0a.23
cmp esi, dword [edx + 0x78]
jb case.default.0x4af099
mov eax, dword [edx + 0x88]
test eax, eax
je case.0x4af099.10
cmp esi, dword [edx + 0x84]
jbe case.0x4af099.10
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4aee1d
mov ebx, dword [esp + 0x14c]
mov edx, dword [edx + 0x18]
lea edi, [ebx + 0x1c]
test edx, edx
je 0x4aede7
push 0
push edi
push ecx
mov ecx, esi
call fcn.004b2d60
add esp, 0xc
test eax, eax
je case.default.0x4af099
mov ecx, dword [ebx + 0x78]
mov edx, dword [edi]
jmp 0x4aee11
mov edx, dword [edi]
mov eax, ecx
sub eax, edx
cmp esi, eax
ja case.default.0x4af099
mov al, byte [esi]
cmp al, byte [ebx + 0x2c]
jne case.default.0x4af099
cmp edx, 1
je 0x4aee11
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x2d]
jne case.default.0x4af099
sub ecx, edx
cmp esi, ecx
jne case.default.0x4af099
mov edx, ebx
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4aee3f
cmp esi, dword [edx + 0x84]
jbe 0x4aee3f
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9cb
cmp esi, dword [edx + 0x74]
jne 0x4aee56
xor edx, edx
jmp 0x4aee78
cmp esi, dword [edx + 0x84]
ja 0x4aee67
lea eax, [esi - 1]
mov dword [edx + 0x84], eax
mov ecx, dword [edx + 0x38]
movzx eax, byte [esi - 1]
movzx edx, byte [eax + ecx]
shr edx, 4
and edx, 1
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jb 0x4aeeaa
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4aeea6
cmp esi, dword [ecx + 0x84]
jbe 0x4aeea6
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
xor ecx, ecx
jmp 0x4aeeba
mov ecx, dword [ecx + 0x38]
movzx eax, byte [esi]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
mov ebp, dword [esp + 0x14]
xor edx, ecx
mov al, byte [ebp]
inc ebp
mov dword [esp + 0x14], ebp
cmp al, 5
jne 0x4aeecf
xor edx, 1
test edx, edx
jne case.default.0x4af099
mov edx, dword [esp + 0x14c]
jmp 0x4ad9d9
mov edx, dword [edx + 0x18]
test edx, edx
je 0x4aef1a
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4aef4b
push 0
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.004b2d60
add esp, 0xc
test eax, eax
jne case.default.0x4af099
mov edx, dword [esp + 0x14c]
jmp case.0x4ada0a.13
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x78]
mov ecx, dword [edx + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x4ada0a.13
mov al, byte [esi]
cmp al, byte [edx + 0x2c]
jne case.0x4ada0a.13
cmp ecx, 1
je case.default.0x4af099
mov al, byte [esi + 1]
cmp al, byte [edx + 0x2d]
je case.default.0x4af099
jmp case.0x4ada0a.13
mov edx, eax
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov ebp, dword [esp + 0x14]
inc esi
inc ebp
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 4
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 4
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 1
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 1
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 0x10
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edx + 0x38]
mov dword [esp + 0x18], esi
test byte [ecx + eax], 0x10
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4b0cb7
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp eax, 0x85
ja 0x4af0c4
je case.0x4af099.11
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x4af099
jmp dword [eax*4 + 0x4b1a60]
cmp esi, ecx
jae case.0x4af099.10
cmp byte [esi], 0xa
jne case.0x4af099.10
mov ebp, dword [esp + 0x14]
inc esi
inc ebp
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
sub eax, 0x2028
je case.0x4af099.11
sub eax, 1
jne case.default.0x4af099
cmp dword [edx + 0x64], 0
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov al, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp al, 0xa0
ja case.0x4af099.10
je case.default.0x4af099
cmp al, 9
je case.default.0x4af099
cmp al, 0x20
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov al, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp al, 0xa0
ja case.default.0x4af099
je case.0x4af099.10
cmp al, 9
je case.0x4af099.10
cmp al, 0x20
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp eax, 0x85
ja 0x4af195
je case.default.0x4af099
add eax, 0xfffffff6
cmp eax, 3
ja case.0x4af099.10
jmp dword [eax*4 + 0x4b1a70]
sub eax, 0x2028
je case.default.0x4af099
sub eax, 1
je case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp eax, 0x85
ja 0x4af1e8
je case.0x4af099.10
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x4af099
jmp dword [eax*4 + 0x4b1a80]
sub eax, 0x2028
je case.0x4af099.10
sub eax, 1
jne case.default.0x4af099
mov ebp, dword [esp + 0x14]
inc ebp
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov ebx, dword [esp + 0x14]
xor edx, edx
cmp ebp, 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 + 0x34], edx
add ecx, ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x2c], ecx
cmp ecx, edi
jge 0x4af251
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + ecx*4]
test edi, edi
js 0x4af251
mov ebp, dword [eax + ecx*4 + 4]
sub ebp, edi
jmp 0x4af262
mov eax, dword [esp + 0x14c]
mov ebp, dword [eax + 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.0x4af27a
movzx eax, byte [eax + 0x4b1a98]
jmp dword [eax*4 + 0x4b1a90]
movsx eax, byte [edi + 0x4d91f2]
lea ebx, [edi - 0x62]
inc dword [esp + 0x14]
and ebx, 1
mov dword [esp + 0x1c], ebx
movsx ebx, byte [edi + 0x4d91fa]
mov dword [esp + 0x28], eax
test eax, eax
jne 0x4af2ee
mov dword [esp + 0x28], CreateStatusWindowA
jmp 0x4af2ee
mov edi, dword [esp + 0x14]
xor eax, eax
cmp bl, 0x69
sete al
movzx ebx, byte [edi + 1]
mov dword [esp + 0x1c], 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, SysReAllocString
cmove edi, eax
add dword [esp + 0x14], 5
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x148]
test ebp, ebp
je 0x4ad9b2
jns 0x4af307
test ebx, ebx
je 0x4ad9b2
mov edi, 1
cmp ebx, edi
jl 0x4af33e
push edx
push dword [esp + 0x150]
mov edx, esi
push ebp
call fcn.004ad870
add esp, 0xc
test eax, eax
js 0x4b0cd0
mov ecx, dword [esp + 0x2c]
add esi, eax
mov edx, dword [esp + 0x34]
inc edi
mov dword [esp + 0x18], esi
cmp edi, ebx
jle 0x4af310
mov eax, dword [esp + 0x28]
cmp ebx, eax
je 0x4ad9c0
cmp dword [esp + 0x1c], 0
je 0x4b0d06
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov edi, dword [esp + 0x2c]
cmp ebx, dword [esp + 0x28]
jge case.default.0x4af099
push dword [esp + 0x34]
mov edx, esi
mov ecx, edi
push dword [esp + 0x150]
push ebp
call fcn.004ad870
add esp, 0xc
test eax, eax
js 0x4b0cd0
mov edx, dword [esp + 0x14]
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.004ad900
add esp, 0x14
test eax, eax
je 0x4af394
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ebx, dword [esp + 0x14c]
push edx
push ebx
push ebp
mov edx, esi
call fcn.004ad870
add esp, 0xc
test eax, eax
js 0x4b0dbc
add esi, eax
mov edx, ebx
mov dword [esp + 0x18], esi
jmp 0x4ad9c7
mov edi, dword [esp + 0x14]
mov dl, byte [edi + 0x21]
lea ebp, [edi + 1]
add edi, 0x21
movzx ecx, dl
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x14], edi
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x4af457
movzx eax, byte [eax + 0x4b1aa8]
jmp dword [eax*4 + 0x4b1aa0]
movsx eax, byte [ecx + 0x4d91f2]
lea edx, [ecx - 0x62]
movsx ebx, byte [ecx + 0x4d91fa]
inc edi
and edx, 1
mov dword [esp + 0x14], edi
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], eax
test eax, eax
jne 0x4af4c6
mov dword [esp + 0x28], CreateStatusWindowA
jmp 0x4af4c6
movzx ebx, byte [edi + 1]
xor eax, eax
movzx ecx, byte [edi + 3]
cmp dl, 0x69
sete al
shl ebx, 8
mov dword [esp + 0x20], eax
movzx eax, byte [edi + 2]
or ebx, eax
shl ecx, 8
movzx eax, byte [edi + 4]
or ecx, eax
mov eax, SysReAllocString
cmove ecx, eax
add edi, 5
mov dword [esp + 0x28], ecx
mov dword [esp + 0x14], edi
cmp ebx, 1
jl 0x4af523
jmp 0x4af4da
mov dword [esp + 0x28], 1
mov ebx, 1
mov ecx, dword [esp + 0x14c]
mov edi, 1
mov ebp, dword [ecx + 0x78]
nop dword [eax]
cmp esi, ebp
jae 0x4b0eab
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 + 0x18], esi
test byte [edx + ecx], al
je case.default.0x4af099
inc edi
cmp edi, ebx
jle 0x4af4f0
mov ebp, ecx
mov edi, dword [esp + 0x28]
cmp ebx, edi
je 0x4ad9c0
cmp dword [esp + 0x20], 0
je 0x4b0deb
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
cmp ebx, edi
jge case.default.0x4af099
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4b0eb2
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.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
je 0x4af575
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [edx + 0x78]
sub eax, esi
cmp eax, 1
jl 0x4b0cb7
mov ebp, dword [esp + 0x14]
mov al, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp byte [ebp + 1], al
jne case.default.0x4af099
add ebp, 2
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov ebp, dword [esp + 0x14]
mov edx, dword [edx + 0x30]
movzx ecx, byte [esi]
movzx eax, byte [ebp + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.default.0x4af099
mov edx, dword [esp + 0x14c]
inc esi
add ebp, 2
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebp
jmp 0x4ad9d9
mov edx, dword [esp + 0x14]
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
add edx, 3
mov edi, ebp
jmp 0x4af726
mov dword [esp + 0x30], 1
mov edx, dword [esp + 0x14]
xor edi, edi
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x1c], ebp
cmp cl, 0x28
je 0x4af69d
mov dword [esp + 0x20], edi
cmp cl, 0x35
jne 0x4af6a5
mov dword [esp + 0x20], 1
add edx, 3
jmp 0x4af72a
mov edx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x30], 1
mov ebp, SysReAllocString
inc edx
jmp 0x4af726
mov edx, dword [esp + 0x14]
mov edi, 1
mov dword [esp + 0x30], 1
mov ebp, SysReAllocString
inc edx
jmp 0x4af726
mov edx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x30], 1
inc edx
lea ebp, [edi + 1]
jmp 0x4af726
cmp ebp, 0x2e
sbb eax, eax
inc dword [esp + 0x14]
and eax, 0xfffffff3
add eax, 0x2e
sub ebp, eax
mov eax, SysReAllocString
mov edx, ebp
and edx, 1
mov dword [esp + 0x20], edx
movsx edi, byte [ebp + 0x4d925c]
movsx ebp, byte [ebp + 0x4d9254]
mov edx, dword [esp + 0x14]
test ebp, ebp
cmove ebp, eax
mov dword [esp + 0x1c], ebp
movzx ebx, byte [edx]
inc edx
mov dword [esp + 0x14], edx
cmp cl, 0x2e
jb 0x4af86e
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x34]
mov al, byte [ebx + eax]
mov byte [esp + 0x27], al
movzx ebp, al
cmp edi, 1
jl 0x4af788
mov edx, dword [ecx + 0x78]
mov ecx, 1
nop dword [eax]
cmp esi, edx
jae 0x4b0eab
movzx eax, byte [esi]
cmp ebx, eax
je 0x4af777
cmp ebp, eax
jne case.default.0x4af099
inc esi
inc ecx
mov dword [esp + 0x18], esi
cmp ecx, edi
jle 0x4af760
mov ecx, dword [esp + 0x14c]
mov edx, dword [esp + 0x1c]
cmp edi, edx
je 0x4ad9c0
cmp dword [esp + 0x20], 0
jne 0x4b0ec5
mov eax, esi
mov dword [esp + 0x28], eax
cmp edi, edx
jge 0x4af7d1
mov ecx, dword [ecx + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4af83c
movzx eax, byte [esi]
cmp ebx, eax
je 0x4af7c3
cmp ebp, eax
jne 0x4af7cd
inc esi
inc edi
mov dword [esp + 0x18], esi
cmp edi, edx
jl 0x4af7b0
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x14c]
cmp dword [esp + 0x30], 0
jne 0x4ad9c7
cmp esi, eax
jb case.default.0x4af099
mov edi, dword [esp + 0x28]
nop
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
dec esi
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
cmp esi, edi
jae 0x4af7f0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4af865
cmp esi, dword [edx + 0x84]
jbe 0x4af865
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
mov eax, dword [esp + 0x28]
jmp 0x4af7d8
mov ecx, 1
cmp edi, ecx
jl 0x4af8a2
mov eax, dword [esp + 0x14c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4b0eab
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp ebx, eax
jne case.default.0x4af099
inc ecx
cmp ecx, edi
jle 0x4af881
mov edx, dword [esp + 0x14]
cmp edi, ebp
je 0x4ad9c0
cmp dword [esp + 0x20], 0
jne 0x4b0f69
mov edx, dword [esp + 0x1c]
mov ebp, esi
cmp edi, edx
jge 0x4af8e5
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4af94c
movzx eax, byte [esi]
cmp ebx, eax
jne 0x4af8e5
inc esi
inc edi
mov dword [esp + 0x18], esi
cmp edi, edx
jl 0x4af8d0
mov edx, dword [esp + 0x14c]
cmp dword [esp + 0x30], 0
jne 0x4ad9c7
cmp esi, ebp
jb case.default.0x4af099
nop
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
dec esi
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
cmp esi, ebp
jae 0x4af900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4af8ec
cmp esi, dword [edx + 0x84]
jbe 0x4af8ec
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
jmp 0x4af8ec
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov eax, dword [esp + 0x14]
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x18], esi
movzx edx, byte [eax + 1]
add eax, 2
mov dword [esp + 0x14], eax
cmp ebp, 0x20
jne 0x4af9cd
cmp edx, ecx
je case.default.0x4af099
mov eax, dword [esp + 0x14c]
mov eax, dword [eax + 0x34]
movzx eax, byte [eax + edx]
cmp eax, ecx
je case.default.0x4af099
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x14]
jmp 0x4ad9d9
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x14], ebp
cmp edx, ecx
je case.default.0x4af099
mov edx, dword [esp + 0x14c]
jmp 0x4ad9d9
mov edx, dword [esp + 0x14]
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
add edx, 3
mov edi, ebp
jmp 0x4afad5
mov edx, dword [esp + 0x14]
xor edi, edi
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x1c], ebp
cmp cl, 0x42
je 0x4afa29
mov dword [esp + 0x20], edi
cmp cl, 0x4f
jne 0x4afa31
mov dword [esp + 0x20], 1
add edx, 3
jmp 0x4afad9
mov edx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x30], 1
mov ebp, SysReAllocString
inc edx
jmp 0x4afad5
mov edx, dword [esp + 0x14]
mov edi, 1
mov dword [esp + 0x30], 1
mov ebp, SysReAllocString
inc edx
jmp 0x4afad5
mov edx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x30], 1
inc edx
lea ebp, [edi + 1]
jmp 0x4afad5
mov edx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x30], 1
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebp, 8
or ebp, eax
add edx, 3
jmp 0x4afad5
cmp ebp, 0x48
sbb eax, eax
inc dword [esp + 0x14]
and eax, 0xfffffff3
add eax, 0x48
sub ebp, eax
mov eax, SysReAllocString
mov edx, ebp
and edx, 1
mov dword [esp + 0x20], edx
movsx edi, byte [ebp + 0x4d925c]
movsx ebp, byte [ebp + 0x4d9254]
mov edx, dword [esp + 0x14]
test ebp, ebp
cmove ebp, eax
mov dword [esp + 0x1c], ebp
movzx ebx, byte [edx]
inc edx
cmp cl, 0x48
mov dword [esp + 0x14], edx
mov ecx, 1
jb 0x4afc1e
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x34]
mov al, byte [ebx + eax]
mov byte [esp + 0x27], al
movzx ebp, al
cmp edi, ecx
jl 0x4afb35
mov edx, dword [edx + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x4b0eab
movzx eax, byte [esi]
cmp ebx, eax
je case.default.0x4af099
cmp ebp, eax
je case.default.0x4af099
inc esi
inc ecx
mov dword [esp + 0x18], esi
cmp ecx, edi
jle 0x4afb10
mov edx, dword [esp + 0x1c]
cmp edi, edx
je 0x4ad9c0
cmp dword [esp + 0x20], 0
jne 0x4b1001
mov eax, esi
mov dword [esp + 0x1c], eax
cmp edi, edx
jge 0x4afb81
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4afbec
movzx eax, byte [esi]
cmp ebx, eax
je 0x4afb7d
cmp ebp, eax
je 0x4afb7d
inc esi
inc edi
mov dword [esp + 0x18], esi
cmp edi, edx
jl 0x4afb60
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x14c]
cmp dword [esp + 0x30], 0
jne 0x4ad9c7
cmp esi, eax
jb case.default.0x4af099
mov edi, dword [esp + 0x1c]
nop
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
dec esi
cmp esi, edi
jae 0x4afba0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4afc15
cmp esi, dword [edx + 0x84]
jbe 0x4afc15
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
mov eax, dword [esp + 0x1c]
jmp 0x4afb88
cmp edi, 1
jl 0x4afc51
mov eax, dword [esp + 0x14c]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4b0eab
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp ebx, eax
je case.default.0x4af099
inc ecx
cmp ecx, edi
jle 0x4afc30
mov edx, dword [esp + 0x14]
cmp edi, ebp
je 0x4ad9c0
cmp dword [esp + 0x20], 0
jne 0x4b10ad
mov edx, dword [esp + 0x1c]
mov ebp, esi
cmp edi, edx
jge 0x4afc91
mov eax, dword [esp + 0x14c]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4afcfc
movzx eax, byte [esi]
cmp ebx, eax
je 0x4afc91
inc esi
inc edi
mov dword [esp + 0x18], esi
cmp edi, edx
jl 0x4afc78
mov edx, dword [esp + 0x14c]
cmp dword [esp + 0x30], 0
jne 0x4ad9c7
cmp esi, ebp
jb case.default.0x4af099
nop dword [eax + eax]
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
dec esi
cmp esi, ebp
jae 0x4afcb0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4afc98
cmp esi, dword [edx + 0x84]
jbe 0x4afc98
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
jmp 0x4afc98
mov edi, dword [esp + 0x14]
mov dword [esp + 0x20], 1
movzx ebp, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ebp, 8
or ebp, eax
add edi, 3
mov dword [esp + 0x1c], ebp
mov ebx, ebp
jmp 0x4afe5e
mov edi, dword [esp + 0x14]
xor ebx, ebx
movzx ebp, byte [edi + 3]
mov dword [esp + 0x28], ebp
mov dword [esp + 0x34], ebp
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x1c], ecx
lea eax, [edi + 3]
xor ecx, ecx
cmp byte [esp + 0x27], 0x5c
sete cl
inc eax
mov dword [esp + 0x14], eax
jmp 0x4aff15
mov ebp, SysReAllocString
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x30], 1
movzx ecx, byte [eax + 1]
add eax, 2
mov dword [esp + 0x28], ecx
mov dword [esp + 0x14], eax
jmp 0x4aff3b
mov eax, dword [esp + 0x14]
mov ebx, 1
mov dword [esp + 0x30], 1
mov dword [esp + 0x1c], CreateStatusWindowA
movzx edx, byte [eax + 1]
add eax, 2
mov dword [esp + 0x28], edx
mov ecx, edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x14], eax
jmp 0x4afe84
mov ebp, 1
jmp 0x4afd98
mov edi, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x30], 1
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x1c], ecx
movzx ecx, byte [edi + 3]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], ecx
lea ecx, [edi + 4]
mov dword [esp + 0x14], ecx
jmp 0x4aff0d
mov edi, dword [esp + 0x14]
lea edx, [ebp - 0x55]
movsx ebx, byte [ebp + 0x4d9207]
and edx, 1
mov dword [esp + 0x20], edx
inc edi
movsx edx, byte [ebp + 0x4d91ff]
mov eax, SysReAllocString
test edx, edx
cmove edx, eax
mov dword [esp + 0x1c], edx
movzx eax, byte [edi]
inc edi
mov dword [esp + 0x28], eax
mov ecx, eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], 0
test ebx, ebx
jle 0x4b0287
lea eax, [ecx - 6]
cmp eax, 0xf
ja case.0x4b1276.15
jmp dword [eax*4 + 0x4b1ab0]
mov edi, 1
cmp ebx, edi
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
nop dword [eax + eax]
mov eax, dword [ebp + 0x78]
cmp esi, eax
jae 0x4b1145
mov edx, dword [ebp + 0x18]
lea ecx, [ebp + 0x1c]
test edx, edx
je 0x4afedd
push 0
push ecx
push eax
mov ecx, esi
call fcn.004b2d60
add esp, 0xc
test eax, eax
jne case.default.0x4af099
jmp 0x4aff01
mov ecx, dword [ecx]
sub eax, ecx
cmp esi, eax
ja 0x4aff01
mov al, byte [esi]
cmp al, byte [ebp + 0x2c]
jne 0x4aff01
cmp ecx, 1
je case.default.0x4af099
mov al, byte [esi + 1]
cmp al, byte [ebp + 0x2d]
je case.default.0x4af099
inc esi
inc edi
mov dword [esp + 0x18], esi
cmp edi, ebx
jle 0x4afeb0
mov edx, ebp
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov ebp, eax
mov edi, esi
cmp ebx, dword [esp + 0x1c]
je 0x4ad9c7
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebp
test ecx, ecx
jne 0x4b1191
mov ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x1c]
lea eax, [ecx - 6]
mov edi, esi
cmp eax, 0xf
ja case.0x4b1276.15
jmp dword [eax*4 + 0x4b1af0]
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x78]
sub eax, ebx
cmp esi, eax
ja 0x4b0cb7
add esi, ebx
mov dword [esp + 0x18], esi
jmp 0x4aff0d
mov ecx, 1
cmp ebx, ecx
jb 0x4b0287
mov edi, dword [esp + 0x14c]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x4b116b
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [esp + 0x18], esi
cmp eax, 0x7b
ja case.default.0x4af099
movzx eax, byte [eax + 0x4b1b40]
jmp dword [eax*4 + 0x4b1b30]
cmp esi, edx
jae case.0x4affa6.10
cmp byte [esi], 0xa
jne case.0x4affa6.10
inc esi
mov dword [esp + 0x18], esi
jmp case.0x4affa6.10
cmp dword [edi + 0x64], 0
jne case.default.0x4af099
inc ecx
cmp ecx, ebx
jle 0x4aff83
mov edx, edi
jmp 0x4aff0d
mov ecx, 1
cmp ebx, ecx
jb 0x4b0287
mov edi, dword [esp + 0x14c]
mov edx, dword [edi + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x4b116b
mov al, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp al, 9
je case.default.0x4af099
cmp al, 0x20
je case.default.0x4af099
cmp al, 0xa0
je case.default.0x4af099
inc ecx
cmp ecx, ebx
jle 0x4afff0
mov edx, edi
jmp 0x4aff0d
mov ecx, 1
cmp ebx, ecx
jb 0x4b0287
mov edi, dword [esp + 0x14c]
mov edx, dword [edi + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x4b116b
mov al, byte [esi]
inc esi
mov dword [esp + 0x18], esi
cmp al, 9
je 0x4b005f
cmp al, 0x20
je 0x4b005f
cmp al, 0xa0
jne case.default.0x4af099
inc ecx
cmp ecx, ebx
jle 0x4b0040
mov edx, edi
jmp 0x4aff0d
mov ecx, 1
cmp ebx, ecx
jb 0x4b0287
mov edi, dword [esp + 0x14c]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x4b116b
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [esp + 0x18], esi
cmp eax, 0x7b
ja case.0x4b00a1.14
movzx eax, byte [eax + 0x4b1bc4]
jmp dword [eax*4 + 0x4b1bbc]
inc ecx
cmp ecx, ebx
jle 0x4b0082
mov edx, edi
jmp 0x4aff0d
mov ecx, 1
cmp ebx, ecx
jb 0x4b0287
mov edi, dword [esp + 0x14c]
mov edx, dword [edi + 0x78]
nop dword [eax + eax]
cmp esi, edx
jae 0x4b116b
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [esp + 0x18], esi
cmp eax, 0x7b
ja case.default.0x4af099
movzx eax, byte [eax + 0x4b1c48]
jmp dword [eax*4 + 0x4b1c40]
inc ecx
cmp ecx, ebx
jle 0x4b00d0
mov edx, edi
jmp 0x4aff0d
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b0120
jmp 0x4aff0b
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b0160
jmp 0x4aff0b
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b01a0
jmp 0x4aff0b
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b01e0
jmp 0x4aff0b
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b0220
jmp 0x4aff0b
mov edx, 1
cmp ebx, edx
jb 0x4b0287
mov ebp, dword [esp + 0x14c]
mov edi, dword [ebp + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4b1145
movzx ecx, byte [esi]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je case.default.0x4af099
inc esi
inc edx
mov dword [esp + 0x18], esi
cmp edx, ebx
jle 0x4b0260
jmp 0x4aff0b
mov edx, dword [esp + 0x14c]
jmp 0x4aff0d
cmp ebx, ebp
jge 0x4b062c
nop dword [eax + eax]
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4b04f9
mov ecx, dword [esp + 0x14c]
mov edx, dword [edx + 0x18]
add ecx, 0x1c
test edx, edx
je 0x4b02db
push 0
push ecx
push eax
mov ecx, esi
call fcn.004b2d60
mov edx, dword [esp + 0x158]
add esp, 0xc
test eax, eax
jne 0x4b062c
jmp 0x4b0306
mov ecx, dword [ecx]
sub eax, ecx
mov edx, dword [esp + 0x14c]
cmp esi, eax
ja 0x4b0306
mov al, byte [esi]
cmp al, byte [edx + 0x2c]
jne 0x4b0306
cmp ecx, 1
je 0x4b062c
mov al, byte [esi + 1]
cmp al, byte [edx + 0x2d]
je 0x4b062c
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b02a0
jmp 0x4b062c
mov ecx, dword [edx + 0x78]
sub ebp, ebx
mov eax, ecx
sub eax, esi
cmp ebp, eax
jbe 0x4b0357
mov eax, dword [edx + 0x88]
mov esi, ecx
mov dword [esp + 0x18], esi
test eax, eax
je 0x4b062c
cmp esi, dword [edx + 0x84]
jbe 0x4b062c
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
jmp 0x4b062c
add esi, ebp
mov dword [esp + 0x18], esi
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov ecx, dword [edx + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4b04f9
mov al, byte [esi]
cmp al, 0xd
jne 0x4b0392
inc esi
mov dword [esp + 0x18], esi
cmp esi, ecx
jae 0x4b062c
cmp byte [esi], 0xa
jne 0x4b03b5
jmp 0x4b03b0
cmp al, 0xa
je 0x4b03b0
cmp dword [edx + 0x64], 0
jne 0x4b062c
cmp al, 0xb
je 0x4b03b0
cmp al, 0xc
je 0x4b03b0
cmp al, 0x85
jne 0x4b062c
inc esi
mov dword [esp + 0x18], esi
inc ebx
cmp ebx, ebp
jl 0x4b0370
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov ecx, dword [edx + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x4b04f9
mov al, byte [esi]
cmp al, 9
je 0x4b062c
cmp al, 0x20
je 0x4b062c
cmp al, 0xa0
je 0x4b062c
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b03d0
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov ecx, dword [edx + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x4b04f9
mov al, byte [esi]
cmp al, 9
je 0x4b042a
cmp al, 0x20
je 0x4b042a
cmp al, 0xa0
jne 0x4b062c
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0410
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4b04f9
mov al, byte [esi]
cmp al, 0xa
je 0x4b062c
cmp al, 0xb
je 0x4b062c
cmp al, 0xc
je 0x4b062c
cmp al, 0xd
je 0x4b062c
cmp al, 0x85
je 0x4b062c
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0444
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4b04f9
mov al, byte [esi]
cmp al, 0xa
je 0x4b04ae
cmp al, 0xb
je 0x4b04ae
cmp al, 0xc
je 0x4b04ae
cmp al, 0xd
je 0x4b04ae
cmp al, 0x85
jne 0x4b062c
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0490
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
jne 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b04c8
jmp 0x4b0625
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x4b062c
cmp esi, dword [edx + 0x84]
jbe 0x4b062c
mov dword [edx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
jmp 0x4b062c
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 4
je 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0533
jmp 0x4b0625
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
jne 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0568
jmp 0x4b0625
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 1
je 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b05a0
jmp 0x4b0625
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
nop
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
jne 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b05d0
jmp 0x4b0625
cmp ebx, ebp
jge 0x4b062c
mov edx, dword [edx + 0x78]
nop
cmp esi, edx
jae 0x4b04f2
mov eax, dword [esp + 0x14c]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x38]
test byte [ecx + eax], 0x10
je 0x4b0625
inc esi
inc ebx
mov dword [esp + 0x18], esi
cmp ebx, ebp
jl 0x4b0600
mov edx, dword [esp + 0x14c]
cmp dword [esp + 0x30], 0
jne 0x4ad9c7
cmp esi, edi
jb case.default.0x4af099
nop
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, dword [esp + 0x24]
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
dec esi
cmp dword [esp + 0x28], 0x11
jne 0x4b0690
cmp esi, edi
jbe 0x4b0692
cmp byte [esi], 0xa
jne 0x4b0690
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
cmove esi, eax
cmp esi, edi
mov edx, dword [esp + 0x14c]
jae 0x4b0640
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp al, 0x74
mov eax, dword [esp + 0x154]
jne 0x4b06e6
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov edx, dword [esp + 0x14c]
jmp 0x4b0991
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
add ebp, 3
jmp 0x4b0991
mov eax, dword [edi + 0x8c]
cmp eax, dword [esp + 0x148]
movzx ecx, byte [ebp + 4]
cmovle eax, dword [esp + 0x148]
mov edx, eax
shl ecx, 8
movzx eax, byte [ebp + 5]
add ebp, 3
or ecx, eax
mov dword [esp + 0x148], edx
add ebp, ecx
cmp byte [ebp], 0x71
jne 0x4ae0ed
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4b0763
jmp 0x4ae0ed
cmp al, 0x75
je 0x4b0c2b
cmp al, 0x74
jne 0x4b07d6
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push edi
push dword [esp + 0x154]
lea edx, [ebx + 3]
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov al, byte [ebp]
cmp al, 0x7b
je 0x4b0bdc
cmp al, 0x82
jae 0x4b0b9b
mov edx, dword [esp + 0x14c]
jmp 0x4b0991
cmp byte [ebp], 0x82
jb 0x4b07e6
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
push edx
push edi
push dword [esp + 0x154]
mov edx, ebp
call fcn.004ad900
add esp, 0x14
cmp eax, 0xfffffc1c
jne 0x4b0827
mov ecx, dword [esp + 0x14c]
cmp dword [ecx + 0xb4], ebp
jne 0x4b09a8
jmp 0x4b0836
test eax, eax
jne 0x4b09a8
mov ecx, dword [esp + 0x14c]
add ebx, 3
cmp byte [ebp], 0x7b
mov dword [esp + 0x14], ebx
je 0x4b0c16
mov edx, dword [esp + 0x14c]
mov ebp, ebx
jmp 0x4b0995
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x14c]
movzx edx, byte [ebp + 3]
movzx eax, byte [ebp + 4]
shl edx, 8
or edx, eax
mov dword [esp + 0x28], edx
lea eax, [edx + edx]
mov dword [esp + 0x38], eax
cmp eax, dword [edi + 0x14]
jge 0x4b095a
mov ecx, dword [edi + 0xc]
mov ebx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [esp + 0x34], eax
mov eax, dword [edi + 0x10]
sub eax, edx
mov dword [esp + 0x2c], ebx
lea ecx, [ecx + eax*4]
mov edx, edi
mov eax, dword [ecx]
mov dword [esp + 0x1c], eax
mov eax, esi
sub eax, dword [edx + 0x74]
mov ebx, dword [edx + 0x90]
mov ebp, dword [edx + 0xac]
mov dword [ecx], eax
cmp byte [esp + 0x27], 0x82
jb 0x4b08c7
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 + 0x4d96a8]
push dword [esp + 0x154]
add edx, ecx
mov ecx, esi
call fcn.004ad900
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1c
je 0x4b1440
cmp edi, 0xfffffc20
jne 0x4b1403
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 0x4b1478
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x71
je 0x4b094f
cmp byte [edx], 0x71
jne 0x4b1478
xor edi, edi
jmp 0x4b140b
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x14c]
cmp cl, 0x82
jae 0x4b09b3
cmp cl, 0x7b
je 0x4b09b3
cmp dword [edx + 0x68], 0
jne 0x4b09bd
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + ebp], 0x71
je 0x4b09bd
movzx eax, byte [ebp]
movzx eax, byte [eax + 0x4d96a8]
add ebp, eax
mov dword [esp + 0x14], ebp
mov eax, dword [edx]
cmp eax, dword [edx + 4]
jb 0x4ad970
inc eax
mov dword [edx], eax
mov eax, 0xfffffff8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x154]
mov ecx, esi
mov ebx, dword [edx + 0xac]
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ebp]
push edx
push dword [esp + 0x154]
movzx edx, byte [eax + 0x4d96a8]
push dword [esp + 0x154]
add edx, ebp
call fcn.004ad900
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc20
jne 0x4b0a33
movzx edx, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
mov eax, dword [esp + 0x14c]
shl edx, 8
or edx, ecx
add edx, ebp
cmp dword [eax + 0x7c], edx
jae 0x4b14d6
cmp byte [ebp], 0x71
je 0x4b0a3b
cmp byte [edx], 0x71
jne 0x4b14d6
jmp 0x4b0a3b
test edi, edi
jne 0x4b1485
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
mov edx, dword [esp + 0x14c]
shl ecx, 8
or ecx, eax
add ebp, ecx
mov dword [edx + 0xac], ebx
cmp byte [ebp], 0x71
jne case.default.0x4af099
mov cl, byte [esp + 0x27]
jmp 0x4b0961
mov eax, dword [esp + 0x154]
mov ecx, esi
inc eax
push eax
push dword [esp + 0x154]
movzx eax, byte [ebp + 0x4d96a8]
push edx
push edi
push ebx
mov ebx, dword [esp + 0x28]
add eax, ebx
movzx edx, byte [ebx + 1]
add edx, eax
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b0ab0
cmp eax, 0xfffffc1d
je 0x4b0ab0
cmp eax, 0xfffffc20
jne 0x4b09a8
mov ecx, dword [esp + 0x14c]
lea eax, [ebx + 2]
mov dword [ecx + 0x7c], eax
mov eax, 0xfffffc1f
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 edx
push dword [esp + 0x154]
mov edx, ebp
call fcn.004ad900
add esp, 0x14
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 0x4b0b2f
push eax
call fcn.004b6427
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.default.0x4af099
push eax
call fcn.004b6427
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 edx, ebp
mov ecx, dword [esp + 0x14c]
inc eax
push eax
push dword [esp + 0x154]
push ecx
push edi
push dword [esp + 0x154]
mov dword [ecx + 0x98], 2
mov ecx, esi
call fcn.004ad900
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov edx, ebp
inc eax
push eax
push dword [esp + 0x154]
push dword [esp + 0x154]
push edi
push dword [esp + 0x154]
mov ecx, esi
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b0c74
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x154]
mov edx, ebx
inc eax
push eax
push dword [esp + 0x154]
push ecx
jmp 0x4b0bf5
mov dword [edx + 0x80], esi
mov eax, 0xfffffc1b
mov dword [edx + 0x8c], edi
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 edx
push edi
push dword [esp + 0x154]
mov edx, ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov eax, dword [esp + 0x14c]
mov dword [eax + 0xb4], ebp
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [esp + 0x144]
mov dword [edx + 0x80], esi
mov dword [edx + 0x8c], edi
mov dword [edx + 0x7c], eax
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x4af099
cmp esi, dword [edx + 0x84]
jmp 0x4b13dd
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x4af099
cmp esi, dword [ecx + 0x78]
jb case.default.0x4af099
cmp esi, dword [ecx + 0x84]
jbe case.default.0x4af099
mov dword [ecx + 0x60], 1
jmp 0x4b13ea
mov edi, esi
cmp ebx, eax
jge 0x4b0d70
nop dword [eax]
push edx
push dword [esp + 0x150]
mov edx, esi
push ebp
call fcn.004ad870
add esp, 0xc
test eax, eax
js 0x4b0d3a
mov ecx, dword [esp + 0x2c]
inc ebx
mov edx, dword [esp + 0x34]
add esi, eax
cmp ebx, dword [esp + 0x28]
jl 0x4b0d10
jmp 0x4b0d68
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4b0d68
cmp esi, dword [ecx + 0x78]
jb 0x4b0d68
cmp esi, dword [ecx + 0x84]
jbe 0x4b0d68
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
cmp esi, edi
jb case.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
sub esi, ebp
cmp esi, edi
jae 0x4b0d70
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x4af099
cmp esi, dword [ebx + 0x78]
jb case.default.0x4af099
cmp esi, dword [ebx + 0x84]
jbe case.default.0x4af099
mov dword [ebx + 0x60], 1
jmp 0x4b13ea
mov edi, esi
cmp ebx, dword [esp + 0x28]
jge 0x4b0e60
mov ecx, dword [esp + 0x14c]
mov ebp, dword [ecx + 0x78]
nop dword [eax]
cmp esi, ebp
jae 0x4b0e29
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 0x4b0e52
inc ebx
inc esi
cmp ebx, dword [esp + 0x28]
jl 0x4b0e00
jmp 0x4b0e52
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x4b0e52
cmp esi, dword [ecx + 0x84]
jbe 0x4b0e52
mov dword [ecx + 0x60], 1
cmp eax, 1
jg 0x4b13f3
cmp esi, edi
jb case.default.0x4af099
nop word [eax + eax]
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
dec esi
cmp esi, edi
jae 0x4b0e60
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 case.default.0x4af099
jmp 0x4b0cee
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov ebp, dword [esp + 0x1c]
nop
cmp edi, ebp
jge case.default.0x4af099
mov edx, dword [esp + 0x14c]
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov cl, byte [esi]
movzx eax, cl
cmp ebx, eax
je 0x4b0f2b
cmp byte [esp + 0x27], cl
jne case.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
je 0x4b0f00
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
cmp edi, ebp
jge case.default.0x4af099
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4b0eb2
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
je 0x4b0fa0
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov ebp, dword [esp + 0x1c]
cmp edi, ebp
jge case.default.0x4af099
mov edx, dword [esp + 0x14c]
cmp esi, dword [edx + 0x78]
jae 0x4b0cb7
mov cl, byte [esi]
movzx eax, cl
cmp ebx, eax
je case.default.0x4af099
cmp byte [esp + 0x27], cl
je case.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
je 0x4b1040
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.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
cmp edi, ebp
jge case.default.0x4af099
mov ecx, dword [esp + 0x14c]
cmp esi, dword [ecx + 0x78]
jae 0x4b0eb2
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x4af099
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.004ad900
add esp, 0x14
test eax, eax
je 0x4b10e4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x4af099
cmp esi, dword [ebp + 0x84]
jbe case.default.0x4af099
mov dword [ebp + 0x60], 1
jmp 0x4b13ea
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x4af099
cmp esi, dword [edi + 0x84]
jbe case.default.0x4af099
mov dword [edi + 0x60], 1
jmp 0x4b13ea
mov eax, dword [esp + 0x154]
mov ecx, edi
inc eax
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, ebp
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
test eax, eax
jne 0x4b09a8
mov esi, dword [esp + 0x34]
nop dword [eax + eax]
cmp ebx, dword [esp + 0x1c]
jge case.default.0x4af099
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0x78]
cmp edi, eax
jae 0x4b13c9
cmp dword [esp + 0x28], 0xc
jne 0x4b1266
mov ecx, dword [esp + 0x14c]
mov edx, dword [edx + 0x18]
add ecx, 0x1c
test edx, edx
je 0x4b122e
push 0
push ecx
push eax
mov ecx, edi
call fcn.004b2d60
add esp, 0xc
test eax, eax
jne case.default.0x4af099
movzx ecx, byte [edi]
inc edi
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x14c]
add eax, 0xfffffffa
jmp switch.0x004b1276
mov ecx, dword [ecx]
sub eax, ecx
mov edx, dword [esp + 0x14c]
cmp edi, eax
ja 0x4b1259
mov al, byte [edi]
cmp al, byte [edx + 0x2c]
jne 0x4b1259
cmp ecx, 1
je case.default.0x4af099
mov al, byte [edi + 1]
cmp al, byte [edx + 0x2d]
je case.default.0x4af099
movzx ecx, byte [edi]
inc edi
mov eax, dword [esp + 0x2c]
add eax, 0xfffffffa
jmp switch.0x004b1276
movzx ecx, byte [edi]
lea eax, [esi - 6]
inc edi
cmp eax, 0xf
ja case.0x4b1276.15
jmp dword [eax*4 + 0x4b1cc4]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x4af099
movzx eax, byte [ecx + 0x4b1d14]
jmp dword [eax*4 + 0x4b1d04]
cmp edi, dword [edx + 0x78]
jae case.0x4b1276.12
cmp byte [edi], 0xa
jne case.0x4b1276.12
inc edi
jmp case.0x4b1276.12
cmp dword [edx + 0x64], 0
jne case.default.0x4af099
jmp case.0x4b1276.12
cmp ecx, 9
je case.default.0x4af099
cmp ecx, 0x20
je case.default.0x4af099
cmp ecx, 0xa0
jmp 0x4b1374
cmp ecx, 9
je case.0x4b1276.12
cmp ecx, 0x20
je case.0x4b1276.12
cmp ecx, 0xa0
jne case.default.0x4af099
jmp case.0x4b1276.12
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x4b1276.12
movzx eax, byte [ecx + 0x4b1d98]
jmp dword [eax*4 + 0x4b1d90]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x4af099
movzx eax, byte [ecx + 0x4b1e1c]
jmp dword [eax*4 + 0x4b1e14]
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 4
jne case.default.0x4af099
jmp case.0x4b1276.12
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 4
jmp 0x4b1374
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 1
jne case.default.0x4af099
jmp case.0x4b1276.12
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 1
jmp 0x4b1374
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 0x10
jne case.default.0x4af099
jmp case.0x4b1276.12
mov eax, dword [edx + 0x38]
test byte [ecx + eax], 0x10
je case.default.0x4af099
mov eax, dword [esp + 0x154]
mov ecx, edi
inc eax
inc ebx
push eax
push dword [esp + 0x154]
push edx
push dword [esp + 0x154]
mov edx, ebp
push dword [esp + 0x154]
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b11d0
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 [edx + 0x88]
test eax, eax
je case.default.0x4af099
cmp edi, dword [edx + 0x84]
jbe case.default.0x4af099
mov dword [edx + 0x60], 1
cmp eax, 1
jle case.default.0x4af099
mov eax, 0xfffffff4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
test edi, edi
jne 0x4b1478
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
je 0x4b08b6
jmp 0x4b1447
mov edx, dword [esp + 0x14c]
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x14c]
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx + 0xc]
mov edx, dword [esp + 0x34]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [ebx + 0x10]
sub ecx, dword [esp + 0x28]
mov eax, dword [ebx + 0xc]
mov edx, dword [esp + 0x1c]
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 0x4b14d6
mov al, byte [ebp]
cmp al, 0x7b
je 0x4b14c4
cmp al, 0x71
jne 0x4b14b5
nop dword [eax + eax]
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
add ebp, ecx
cmp byte [ebp], 0x71
je 0x4b14a0
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl ecx, 8
or ecx, eax
sub ebp, ecx
mov eax, dword [esp + 0x14c]
xor ecx, ecx
cmp dword [eax + 0xb4], ebp
cmove edi, ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x154]
inc eax
mov dword [edx + 0xac], 0
push eax
push dword [esp + 0x154]
lea edi, [ecx + 2]
mov dword [edx + 0xb0], edi
movzx eax, byte [ecx]
push edx
movzx edx, byte [ecx + 1]
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d96a8]
add eax, ecx
mov ecx, esi
push ebx
add edx, eax
call fcn.004ad900
mov edx, eax
add esp, 0x14
cmp edx, 1
je 0x4b153e
cmp edx, 0xfffffc19
jne 0x4b1561
mov ebx, dword [esp + 0x14c]
cmp dword [ebx + 0xac], 0
jne 0x4b1568
mov dword [ebx + 0xac], edi
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ebx, dword [esp + 0x14c]
cmp edx, 0xfffffc1f
jne 0x4ae8a9
mov eax, dword [ebx + 0x7c]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x4b1597
test cl, cl
je 0x4b1593
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x4b1597
add edi, 2
add eax, 2
test cl, cl
jne 0x4b1577
xor eax, eax
jmp 0x4b159c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4ae8a9
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
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 edx
movzx edx, byte [ebp + 0x4d96a8]
add edx, dword [esp + 0x20]
push edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b1603
cmp eax, 0xfffffc1d
je 0x4b1603
cmp eax, 0xfffffc1e
je 0x4b1603
cmp eax, 0xfffffc1f
je 0x4b1603
cmp eax, 0xfffffc20
jne 0x4b09a8
mov eax, 0xfffffc1a
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 edx
movzx edx, byte [ebp + 0x4d96a8]
add edx, dword [esp + 0x20]
push edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b16d6
cmp eax, 0xfffffc20
je 0x4b16d6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x154]
inc eax
mov dword [edx + 0xac], 0
push eax
push dword [esp + 0x154]
lea edi, [ecx + 2]
mov dword [edx + 0xb0], edi
movzx eax, byte [ecx]
push edx
movzx edx, byte [ecx + 1]
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d96a8]
add eax, ecx
mov ecx, esi
push ebx
add edx, eax
call fcn.004ad900
add esp, 0x14
cmp eax, 1
je 0x4b16b1
cmp eax, 0xfffffc19
jne 0x4b16c7
mov ecx, dword [esp + 0x14c]
cmp dword [ecx + 0xac], 0
jne 0x4b16c7
mov dword [ecx + 0xac], edi
test eax, eax
je 0x4b16d6
cmp eax, 0xfffffc20
jne 0x4b09a8
mov eax, 0xfffffc1d
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 edx
movzx edx, byte [ebp + 0x4d96a8]
add edx, dword [esp + 0x20]
push edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b1724
cmp eax, 0xfffffc1d
je 0x4b1724
cmp eax, 0xfffffc20
jne 0x4b09a8
mov eax, dword [esp + 0x14c]
mov dword [eax + 0x7c], esi
mov eax, 0xfffffc1e
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 edx
movzx edx, byte [ebp + 0x4d96a8]
add edx, dword [esp + 0x20]
push edi
push ebx
call fcn.004ad900
add esp, 0x14
test eax, eax
je 0x4b17ef
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x154]
inc eax
mov dword [edx + 0xac], 0
push eax
push dword [esp + 0x154]
lea edi, [ecx + 2]
mov dword [edx + 0xb0], edi
movzx eax, byte [ecx]
push edx
movzx edx, byte [ecx + 1]
push dword [esp + 0x154]
movzx eax, byte [eax + 0x4d96a8]
add eax, ecx
mov ecx, esi
push ebx
add edx, eax
call fcn.004ad900
add esp, 0x14
cmp eax, 1
je 0x4b17d1
cmp eax, 0xfffffc19
jne 0x4b17e7
mov ecx, dword [esp + 0x14c]
cmp dword [ecx + 0xac], 0
jne 0x4b17e7
mov dword [ecx + 0xac], edi
test eax, eax
jne 0x4b09a8
mov eax, dword [esp + 0x14c]
mov ecx, dword [esp + 0x14]
mov dword [eax + 0x7c], ecx
mov eax, 0xfffffc20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x130
ret
cmp esi, ebx
jne 0x4b1843
cmp ebp, 0x99
je 0x4b1843
cmp dword [edx + 0xa4], 0
jne 0x4b1843
cmp dword [edx + 0x58], 0
jne case.default.0x4af099
cmp dword [edx + 0x5c], 0
je 0x4b1843
mov eax, dword [edx + 0x94]
add eax, dword [edx + 0x74]
cmp ebx, eax
je case.default.0x4af099
test cl, cl
mov dword [edx + 0x80], esi
mov eax, 0xfffffc19
mov dword [edx + 0x8c], edi
mov ecx, 1
mov dword [edx + 0x7c], ebx
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