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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x114
mov eax, dword [0x4ff684]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x1c]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0xa0], ecx
push esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x88], esi
push edi
mov edi, dword [ebp + 0x18]
mov dword [ebp - 0xbc], edi
test ebx, ebx
jne 0x46d01d
lea eax, [ebp + 0x20]
cmp dword [ebp + 0x20], ebx
jne 0x46d003
push 1
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
call fcn.0046cf90
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
sub eax, esi
cdq
xor eax, edx
pop edi
sub eax, edx
pop esi
neg eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x470d44
mov dword [ebp - 0xc0], SysReAllocString
inc eax
mov dword [edi], eax
mov eax, dword [ebp + 0x20]
cmp eax, dword [edi + 8]
jae 0x470d2e
cmp dword [edi + 0x98], 2
jne 0x46d070
lea eax, [ebp - 0x114]
mov dword [ebp - 0x110], esi
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0xa0], eax
mov dword [edi + 0x98], 0
nop dword [eax]
mov cl, byte [ebx]
movzx edx, cl
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x80], edx
cmp edx, 0xa1
ja case.0x46d09f.15
movzx eax, byte [edx + 0x470e9c]
jmp dword [eax*4 + 0x470d60]
inc dword [edi + 0x28]
mov eax, dword [edi + 0x28]
cmp eax, dword [edi + 0x2c]
ja 0x46fded
movzx eax, byte [ebx]
movzx ecx, byte [eax + 0x4dcfe0]
movzx eax, byte [ebx + 1]
add ebx, eax
add ebx, ecx
jmp 0x46d070
mov eax, dword [edi + 0xac]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x9c], eax
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
lea eax, [ebx + 3]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
cmp eax, 1
je 0x46d1b5
cmp eax, 0xfffffc20
jne 0x46d137
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x470d4c
cmp byte [ebx], 0x77
je 0x46d13f
cmp byte [edx], 0x77
jmp 0x46d139
test eax, eax
jne 0x470d4c
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x9c]
add ebx, ecx
mov dword [edi + 0xac], eax
mov al, byte [ebx]
cmp al, 0x77
je 0x46d0e0
mov edx, dword [ebp - 0x94]
cmp al, 0x82
je 0x46d172
cmp al, 0x77
jne case.0x47063c.14
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov al, byte [ebx + ecx]
add ebx, ecx
cmp al, 0x77
je 0x46d172
mov ecx, dword [edi + 0x8c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], esi
cmp al, 0x78
je 0x46d1ad
cmp esi, dword [ebp - 0x80]
jne 0x46fba4
add ebx, 3
jmp 0x46d070
mov edx, dword [edi + 0x7c]
mov al, byte [ebx]
mov dword [ebp - 0x94], edx
jmp 0x46d166
mov dword [ebp - 0x9c], 0
jmp 0x46dcbe
mov dword [ebp - 0x9c], 0
jmp 0x46dce0
movzx eax, byte [ebx + 2]
movzx ecx, byte [ebx + 1]
add ebx, 3
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xa4], ecx
mov al, byte [ebx]
cmp al, 0x76
jne 0x46d307
mov eax, dword [0x506d70]
mov dword [ebp - 0x9c], eax
test eax, eax
je 0x46d2ee
movzx eax, byte [ebx + 1]
mov ecx, dword [edi + 0x74]
mov dword [ebp - 0x108], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0x78]
sub eax, ecx
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0x94]
sub eax, ecx
mov dword [ebp - 0x10c], 2
mov dword [ebp - 0xf8], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [ebx + 2]
mov dword [ebp - 0xf4], eax
movzx eax, byte [ebx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebx + 5]
mov dword [ebp - 0xe4], ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x8c]
cdq
sub eax, edx
mov dword [ebp - 0xe0], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [ebp - 0xf0], eax
mov eax, dword [edi + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [ebp - 0xec], eax
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0xe8], eax
mov eax, dword [edi + 0xb0]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0x10c]
push eax
call dword [ebp - 0x9c]
add esp, 4
test eax, eax
jg case.0x47063c.14
js 0x470d4c
mov ecx, dword [ebp - 0xa4]
movzx eax, byte [0x4dd056]
add ebx, eax
sub ecx, eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xa4], ecx
mov al, byte [ebx]
movzx eax, al
mov dword [ebp - 0x9c], eax
add eax, 0xffffff73
mov dword [ebp - 0x84], 0
cmp eax, 0x10
ja case.0x46d32f.146
movzx eax, byte [eax + 0x470f58]
jmp dword [eax*4 + 0x470f40]
mov edx, dword [edi + 0xa4]
test edx, edx
je case.0x46d32f.145
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x46d44b
cmp ecx, dword [edx + 4]
je 0x46d44b
xor edx, edx
jmp 0x46d57e
mov eax, dword [edi + 0xa4]
mov dword [ebp - 0x98], eax
test eax, eax
je case.0x46d32f.145
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl ecx, 8
or ecx, eax
shl edx, 8
mov eax, dword [edi + 0x24]
mov dword [ebp - 0xac], eax
movzx eax, byte [ebx + 2]
or edx, eax
mov dword [ebp - 0xa8], ecx
imul edx, dword [edi + 0x24]
add edx, dword [edi + 0x30]
test ecx, ecx
je 0x46d578
mov edi, ecx
nop dword [eax + eax]
mov esi, dword [ebp - 0x98]
xor ebx, ebx
movzx ecx, byte [edx]
dec edi
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 4]
mov esi, dword [ebp - 0xac]
cmp ecx, eax
sete bl
mov dword [ebp - 0x84], ebx
je 0x46d3f3
add edx, esi
test edi, edi
jg 0x46d3c0
cmp ecx, eax
mov esi, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x90]
mov edi, dword [ebp - 0xbc]
mov edx, dword [ebp - 0x84]
jne 0x46d57e
mov eax, dword [ebp - 0x9c]
movzx ecx, byte [eax + 0x4dcfe0]
jmp 0x46d584
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x46d366
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x46d366
mov eax, dword [ebp - 0x9c]
mov edx, 1
movzx ecx, byte [eax + 0x4dcfe0]
jmp 0x46d584
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl ecx, 8
shl edx, 8
or ecx, eax
movzx eax, byte [ebx + 2]
or edx, eax
imul edx, dword [edi + 0x24]
add edx, dword [edi + 0x30]
test ecx, ecx
je 0x46d578
nop dword [eax + eax]
movzx eax, byte [edx]
dec ecx
mov dword [ebp - 0xac], ecx
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x46d4b6
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x46d44b
add edx, dword [edi + 0x24]
mov ecx, dword [ebp - 0xac]
test ecx, ecx
jg 0x46d490
xor edx, edx
jmp 0x46d57e
mov eax, dword [ebp + 0x20]
inc eax
mov dword [edi + 0x98], 1
push eax
push 0
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
cmp eax, 1
jne 0x46d569
mov eax, dword [edi + 0x8c]
mov edx, 1
cmp eax, dword [ebp - 0x8c]
cmovle eax, dword [ebp - 0x8c]
cmp byte [ebx], 0x92
mov dword [ebp - 0x8c], eax
jne 0x46d51b
inc ebx
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x46d544
nop
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46d530
mov eax, dword [ebp - 0x9c]
mov ecx, 3
movzx eax, byte [eax + 0x4dcfe0]
sub ecx, eax
mov eax, dword [ebp - 0x9c]
add ebx, ecx
movzx ecx, byte [eax + 0x4dcfe0]
jmp 0x46d584
test eax, eax
je 0x46d578
cmp eax, 0xfffffc20
jne 0x470d4c
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0xa4]
add ebx, ecx
test edx, edx
jne 0x46d594
cmp byte [ebx - 3], 0x77
jne 0x46d070
cmp dword [ebp - 0x80], 0x8c
jne 0x46fd15
mov eax, dword [ebp + 0x20]
inc eax
mov dword [edi + 0x98], 2
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x84]
jmp 0x46d584
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
mov eax, dword [edi + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
lea ecx, [edx + edx]
mov dword [ebp - 0xac], ecx
cmp ecx, dword [edi + 0x14]
jl 0x46d627
or eax, 0x10000
add ebx, 3
mov dword [edi + 0x90], eax
jmp 0x46d070
mov ecx, dword [edi + 0xc]
lea eax, [edx + edx]
shl eax, 2
mov dword [ebp - 0x90], eax
mov eax, dword [edi + 0x10]
sub eax, edx
mov edx, dword [ebp - 0x90]
mov eax, dword [ecx + eax*4]
mov dword [edx + ecx], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + edx + 4], ecx
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x8c]
cmp edx, ecx
jl 0x46d6b8
mov eax, dword [edi + 0xc]
mov dword [ebp - 0xac], 0
lea ecx, [eax + ecx*4]
add eax, dword [ebp - 0x90]
mov dword [ebp - 0x9c], ecx
mov ecx, eax
sub ecx, dword [ebp - 0x9c]
add ecx, 3
shr ecx, 2
cmp dword [ebp - 0x9c], eax
cmova ecx, dword [ebp - 0xac]
test ecx, ecx
je 0x46d6af
mov edi, dword [ebp - 0x9c]
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0xbc]
lea eax, [edx + 2]
mov dword [ebp - 0x8c], eax
add ebx, 3
jmp 0x46d070
cmp dword [edi + 0x98], 1
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xac], eax
jne 0x46d6eb
mov dword [ebp - 0x90], 1
mov dword [edi + 0x98], 0
jmp 0x46d6f5
mov dword [ebp - 0x90], 0
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push edi
push dword [ebp - 0x8c]
lea eax, [ebx + 3]
push dword [ebp - 0x94]
push eax
push esi
call fcn.0046cf90
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x46d77f
cmp edx, 0xfffffc19
je 0x46d77f
mov eax, dword [ebp - 0xac]
mov dword [edi + 0xac], eax
cmp edx, 0xfffffc20
jne 0x46d75b
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x47091c
cmp byte [ebx], 0x77
je 0x46d763
cmp byte [ecx], 0x77
jmp 0x46d75d
test edx, edx
jne 0x47091c
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov al, byte [ebx + ecx]
add ebx, ecx
cmp al, 0x77
je 0x46d6f5
jmp 0x46d78a
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x94], eax
mov al, byte [ebx]
cmp al, 0x78
je case.0x47063c.14
cmp dword [ebp - 0x90], 0
jne 0x46ffd2
nop
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46d7a0
mov eax, dword [edi + 0x8c]
add ebx, 3
mov dword [ebp - 0x8c], eax
jmp 0x46d070
cmp dword [edi + 0x98], 1
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xac], eax
jne 0x46d7f3
mov dword [ebp - 0x90], 1
mov dword [edi + 0x98], 0
jmp 0x46d800
mov dword [ebp - 0x90], 0
nop dword [eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push edi
push dword [ebp - 0x8c]
lea eax, [ebx + 3]
push dword [ebp - 0x94]
push eax
push esi
call fcn.0046cf90
mov ecx, eax
add esp, 0x1c
mov eax, dword [ebp - 0xac]
mov dword [edi + 0xac], eax
cmp ecx, 0xfffffc20
jg 0x46d859
jne 0x46d87a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x46d895
cmp byte [ebx], 0x77
je 0x46d864
cmp byte [ecx], 0x77
jne 0x46d895
jmp 0x46d864
mov eax, ecx
sub eax, 0
jne 0x46fe45
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46d800
jmp 0x46d8a9
cmp ecx, 0xfffffc19
je case.0x47063c.14
lea eax, [ecx + 0x3e4]
cmp eax, 3
ja 0x470a63
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46d895
cmp dword [ebp - 0x90], 0
jne 0x46ffd2
add ebx, 3
jmp 0x46d070
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
mov dword [ebp - 0x88], esi
cmp esi, dword [edi + 0x74]
jb case.0x47063c.14
cmp esi, dword [edi + 0x84]
jae 0x46d8ea
mov dword [edi + 0x84], esi
add ebx, 3
jmp 0x46d070
mov eax, dword [0x506d70]
mov dword [ebp - 0x9c], eax
test eax, eax
je 0x46d9d4
movzx eax, byte [ebx + 1]
mov ecx, dword [edi + 0x74]
mov dword [ebp - 0x108], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0x78]
sub eax, ecx
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0x94]
sub eax, ecx
mov dword [ebp - 0x10c], 2
mov dword [ebp - 0xf8], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [ebx + 2]
mov dword [ebp - 0xf4], eax
movzx eax, byte [ebx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebx + 5]
mov dword [ebp - 0xe4], ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x8c]
cdq
sub eax, edx
mov dword [ebp - 0xe0], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [ebp - 0xf0], eax
mov eax, dword [edi + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [ebp - 0xec], eax
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0xe8], eax
mov eax, dword [edi + 0xb0]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0x10c]
push eax
call dword [ebp - 0x9c]
add esp, 4
test eax, eax
jg case.0x47063c.14
js 0x470d4c
add ebx, 6
jmp 0x46d070
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add edx, dword [edi + 0x70]
mov dword [ebp - 0x9c], edx
cmp edx, dword [edi + 0x70]
jne 0x46d9fb
xor ecx, ecx
jmp 0x46da08
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [edi + 0xa4]
mov eax, edx
test eax, eax
je 0x46da28
cmp ecx, dword [eax + 4]
jne 0x46da22
cmp esi, dword [eax + 0x14]
je 0x46fe61
mov eax, dword [eax]
test eax, eax
jne 0x46da14
mov eax, dword [edi + 0x90]
add ebx, 3
mov dword [ebp - 0xd4], ecx
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0xc8], eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xd8], edx
mov dword [edi + 0xa4], eax
mov dword [ebp - 0xcc], ecx
cmp ecx, 0x1e
jg 0x46da6e
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xd0], eax
jmp 0x46da93
lea eax, [ecx*4]
push eax
call dword [0x4ff620]
add esp, 4
mov dword [ebp - 0xd0], eax
test eax, eax
je 0x46fee3
mov ecx, dword [ebp - 0xcc]
shl ecx, 2
push ecx
push dword [edi + 0xc]
push eax
call fcn.0048af40
mov edx, dword [ebp - 0x9c]
add esp, 0xc
mov al, byte [edx]
mov byte [ebp - 0xad], al
cmp al, 0x88
jb 0x46dabf
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [edx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, edx
push eax
push esi
call fcn.0046cf90
mov ecx, dword [ebp - 0xcc]
shl ecx, 2
push ecx
push dword [ebp - 0xd0]
mov dword [ebp - 0x90], eax
push dword [edi + 0xc]
call fcn.0048af40
mov eax, dword [ebp - 0xc8]
add esp, 0x28
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0xd8]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0x90]
cmp eax, 1
je 0x46db8a
cmp eax, 0xfffffc19
je 0x46db8a
cmp eax, 0xfffffc1c
jl 0x46db47
cmp eax, 0xfffffc20
jle 0x46fe83
test eax, eax
jne 0x46feb1
mov edx, dword [ebp - 0x9c]
lea eax, [ebp - 0xd8]
mov dword [edi + 0xa4], eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebp - 0x9c], edx
cmp byte [edx], 0x77
jne 0x46fe77
mov al, byte [ebp - 0xad]
jmp 0x46dab1
mov eax, dword [ebp - 0xd0]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x46dba1
push eax
call dword [0x4ff624]
add esp, 4
mov esi, dword [edi + 0x80]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x94], eax
jmp 0x46d070
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je case.0x46d09f.119
jmp 0x46d070
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46dc04
add ebx, 3
jmp 0x46d070
inc ebx
mov edx, ebx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x46dc23
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
lea eax, [edx + 3]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x46d070
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
inc ebx
nop word [eax + eax]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46dc80
add ebx, 3
jmp 0x46d070
movzx edx, byte [ebx + 1]
inc ebx
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x9c], 1
cmp edx, 0x86
je 0x46dcbe
cmp edx, 0x8b
jne 0x46dce0
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x84], edx
lea eax, [edx + edx]
cmp eax, dword [edi + 0x14]
jl 0x46de2e
mov edx, dword [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x90], eax
mov eax, ebx
sub eax, dword [edi + 0x70]
mov dword [ebp - 0xac], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x84], eax
nop
cmp edx, 0x88
jb 0x46dd12
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x46dd8c
mov eax, dword [edi + 0x8c]
mov ebx, dword [edi + 0x70]
add ebx, dword [ebp - 0xac]
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x94], eax
mov eax, dword [edi + 0x80]
mov dword [ebp - 0x90], 1
cmp esi, eax
je 0x46ddf0
mov edx, dword [ebp - 0x80]
mov esi, eax
mov dword [ebp - 0x88], esi
jmp 0x46dd00
cmp edx, 0xfffffc20
jne 0x46ddb6
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x47091c
cmp byte [ebx], 0x77
je 0x46ddbe
cmp byte [ecx], 0x77
jmp 0x46ddb8
test edx, edx
jne 0x47091c
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x46de0c
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x80]
mov dword [edi + 0x90], eax
jmp 0x46dd00
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46ddf0
add ebx, 3
jmp 0x46d070
cmp dword [ebp - 0x90], 0
jne 0x46d1ad
cmp dword [ebp - 0x9c], 0
je case.0x47063c.14
add ebx, 3
jmp 0x46d070
shl eax, 2
mov ecx, ebx
sub ecx, dword [edi + 0x70]
mov dword [ebp - 0xac], ecx
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], 0
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0xb8], eax
mov eax, dword [edi + 0x10]
sub eax, dword [ebp - 0x84]
mov dword [ebp - 0x98], edx
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x90], eax
mov ecx, dword [edi + 0x10]
mov edx, esi
sub ecx, dword [ebp - 0x84]
mov eax, dword [edi + 0xc]
sub edx, dword [edi + 0x74]
cmp dword [ebp - 0x80], 0x88
mov dword [eax + ecx*4], edx
jb 0x46dea7
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x46df2f
mov eax, dword [edi + 0x8c]
mov edx, 1
mov ebx, dword [edi + 0x70]
add ebx, dword [ebp - 0xac]
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x90], eax
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x94], eax
mov eax, dword [edi + 0x80]
mov dword [ebp - 0xa4], edx
cmp esi, eax
je 0x46dff0
mov esi, eax
mov dword [ebp - 0x88], esi
jmp 0x46de80
cmp edx, 0xfffffc20
jne 0x46df59
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x47091c
cmp byte [ebx], 0x77
je 0x46df61
cmp byte [ecx], 0x77
jmp 0x46df5b
test edx, edx
jne 0x47091c
mov eax, dword [ebp - 0x90]
mov dword [edi + 0x90], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46de80
mov edx, dword [ebp - 0xa4]
test edx, edx
jne 0x46dfc9
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x98]
mov dword [ecx + eax], edx
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xb8]
mov dword [eax + ecx + 4], edx
mov ecx, dword [edi + 0x10]
sub ecx, dword [ebp - 0x84]
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xb4]
mov dword [eax + ecx*4], edx
mov edx, dword [ebp - 0xa4]
cmp dword [ebp - 0x9c], 0
jne 0x46d1ad
test edx, edx
je case.0x47063c.14
add ebx, 3
jmp 0x46d070
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x46dff0
jmp 0x46dfc9
movzx ecx, byte [ebx + 1]
mov edx, ebx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [ebp - 0x80], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x46e030
cmp al, 0x81
je 0x46e030
mov dword [ebp - 0x90], 0
jmp 0x46e04d
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x90], ecx
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx]
mov dword [ebp - 0xa0], ecx
cmp al, 0x7d
jb 0x46e059
cmp al, 0x80
jbe 0x46ffb7
cmp al, 0x82
je 0x46ffb7
cmp al, 0x85
je 0x46e071
cmp al, 0x8a
je 0x46e071
cmp al, 0x86
je 0x46e071
cmp al, 0x8b
jne 0x46e0c3
mov eax, dword [ebp - 0x80]
movzx edx, byte [edx + 3]
shl edx, 8
movzx eax, byte [eax + 4]
or edx, eax
mov eax, dword [edi + 0xa4]
lea ecx, [edx + edx]
mov dword [ebp - 0xac], ecx
test eax, eax
je 0x46e09d
cmp dword [eax + 4], edx
je 0x46fef9
mov eax, dword [edi + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
cmp ecx, dword [edi + 0x14]
jl 0x46e133
mov edx, dword [ebp - 0x80]
or eax, 0x10000
mov dword [edi + 0x90], eax
mov ecx, dword [ebp - 0x8c]
mov al, byte [ebx]
cmp al, 0x7b
je 0x46ff8c
cmp al, 0x78
je 0x46e0e3
cmp esi, dword [ebp - 0x90]
jne 0x46fc00
add ebx, 3
cmp byte [edx], 0x81
jne 0x46d070
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push ecx
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov eax, dword [ebp - 0x80]
mov dword [edi + 0xb4], eax
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
cmp ecx, dword [ebp - 0x8c]
jle 0x46e18b
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xb4], 0
lea edi, [eax + ecx*4]
lea ecx, [edx + edx]
mov dword [ebp - 0xb8], edi
lea eax, [eax + ecx*4]
mov ecx, eax
sub ecx, edi
add ecx, 3
shr ecx, 2
cmp edi, eax
mov edi, dword [ebp - 0xbc]
cmova ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x46e18b
mov edi, dword [ebp - 0xb8]
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0xbc]
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, edx
mov edx, dword [ebp - 0xac]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + edx*4 + 4], ecx
mov ecx, dword [ebp - 0x8c]
cmp ecx, edx
jg 0x46e1be
lea ecx, [edx + 2]
mov dword [ebp - 0x8c], ecx
mov edx, dword [ebp - 0x80]
jmp 0x46e0c9
cmp dword [edi + 0x44], 0
je case.0x46d09f.1
cmp esi, dword [edi + 0x74]
je case.0x47063c.14
cmp esi, dword [edi + 0x74]
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp dword [edi + 0x44], 0
je 0x46e1e7
cmp esi, dword [edi + 0x74]
je case.0x47063c.14
mov ecx, dword [edi + 0x74]
cmp esi, ecx
je 0x46e248
cmp esi, dword [edi + 0x78]
je case.0x47063c.14
mov edx, dword [edi + 0x18]
test edx, edx
je 0x46e226
cmp esi, ecx
jbe case.0x47063c.14
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.00471ff0
add esp, 0x14
test eax, eax
jne 0x46e248
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x1c]
lea eax, [edx + ecx]
cmp esi, eax
jb case.0x47063c.14
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x34]
jne case.0x47063c.14
cmp edx, 1
je 0x46e248
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x35]
jne case.0x47063c.14
inc ebx
jmp 0x46d070
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp esi, eax
jne case.0x47063c.14
inc ebx
jmp 0x46d070
mov dword [ebp - 0x94], esi
inc ebx
jmp 0x46d070
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x46e2fd
mov edx, dword [edi + 0x18]
lea ecx, [edi + 0x1c]
test edx, edx
je 0x46e2d7
push 0
push ecx
push eax
push edx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
jne 0x46e248
lea ecx, [edi + 0x1c]
mov edx, dword [edi + 0x88]
test edx, edx
je case.0x47063c.14
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x47063c.14
cmp dword [edi + 0x18], 0
jne case.0x47063c.14
cmp dword [ecx], 2
jne case.0x47063c.14
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x47063c.14
cmp edx, 1
jmp 0x47079e
mov edx, dword [ecx]
sub eax, edx
cmp esi, eax
ja 0x46e297
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46e297
cmp edx, 1
je 0x46e248
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x46e297
inc ebx
jmp 0x46d070
cmp dword [edi + 0x48], 0
jne case.0x47063c.14
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46e248
cmp esi, dword [edi + 0x84]
jbe 0x46e248
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
inc ebx
jmp 0x46d070
cmp dword [edi + 0x48], 0
jne case.0x47063c.14
cmp dword [edi + 0x58], 0
je case.0x46d09f.23
cmp esi, dword [edi + 0x78]
jb case.0x47063c.14
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46e248
cmp esi, dword [edi + 0x84]
jbe 0x46e248
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
inc ebx
jmp 0x46d070
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x46e3e3
mov edx, dword [edi + 0x18]
lea eax, [edi + 0x1c]
test edx, edx
je 0x46e3af
push 0
push eax
push ecx
push edx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
je 0x46ffe8
mov ecx, dword [edi + 0x78]
mov edx, dword [edi + 0x1c]
jmp 0x46e3d9
mov edx, dword [eax]
mov eax, ecx
sub eax, edx
cmp esi, eax
ja 0x46ffe8
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46ffe8
cmp edx, 1
je 0x46e3d9
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x46ffe8
sub ecx, edx
cmp esi, ecx
jne 0x46ffe8
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46e248
cmp esi, dword [edi + 0x84]
jbe 0x46e248
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x74]
jne 0x46e41c
xor edx, edx
jmp 0x46e43e
cmp esi, dword [edi + 0x84]
ja 0x46e42d
lea eax, [esi - 1]
mov dword [edi + 0x84], eax
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi - 1]
movzx edx, byte [eax + ecx]
shr edx, 4
and edx, 1
cmp esi, dword [edi + 0x78]
jb 0x46e469
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46e465
cmp esi, dword [edi + 0x84]
jbe 0x46e465
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
xor ecx, ecx
jmp 0x46e479
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
mov al, byte [ebx]
xor edx, ecx
inc ebx
cmp al, 5
jne 0x46e485
xor edx, 1
test edx, edx
je 0x46d070
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x18]
test edx, edx
je 0x46e4c9
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x46e4f1
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
jne case.0x47063c.14
jmp 0x46e4f1
mov eax, dword [edi + 0x78]
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x46e4f1
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46e4f1
cmp ecx, 1
je case.0x47063c.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x47063c.14
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x46d09f.13
mov eax, dword [edi + 0x78]
dec eax
cmp esi, eax
jne case.0x46d09f.13
cmp dword [edi + 0x18], 0
jne case.0x46d09f.13
cmp dword [edi + 0x1c], 2
jne case.0x46d09f.13
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x46d09f.13
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x4707ab
cmp esi, dword [edi + 0x78]
jae 0x470781
inc esi
inc ebx
mov dword [ebp - 0x88], esi
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 4
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 4
je case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 1
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 1
je case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 0x10
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], esi
test byte [ecx + eax], 0x10
je case.0x47063c.14
inc ebx
jmp 0x46d070
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0xd
ja 0x46e69c
je 0x46e652
cmp al, 0xa
je 0x46e248
jbe case.0x47063c.14
cmp al, 0xc
ja case.0x47063c.14
jmp 0x46e6a4
cmp esi, ecx
jb 0x46e686
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46e248
cmp esi, dword [edi + 0x84]
jbe 0x46e248
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
inc ebx
jmp 0x46d070
cmp byte [esi], 0xa
jne 0x46e248
inc esi
inc ebx
mov dword [ebp - 0x88], esi
jmp 0x46d070
cmp al, 0x85
jne case.0x47063c.14
cmp dword [edi + 0x68], 0
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0xa0
ja 0x46e248
je case.0x47063c.14
cmp al, 9
je case.0x47063c.14
cmp al, 0x20
je case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0xa0
ja case.0x47063c.14
je 0x46e248
cmp al, 9
je 0x46e248
cmp al, 0x20
jne case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0x85
ja 0x46e248
je case.0x47063c.14
cmp al, 0xa
jb 0x46e248
cmp al, 0xd
jbe case.0x47063c.14
inc ebx
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp al, 0x85
ja case.0x47063c.14
je 0x46e248
cmp al, 0xa
jb case.0x47063c.14
cmp al, 0xd
ja case.0x47063c.14
inc ebx
jmp 0x46d070
movzx ecx, byte [ebx + 3]
xor eax, eax
cmp edx, 0x74
movzx edx, byte [ebx + 1]
sete al
shl ecx, 8
mov dword [ebp - 0x9c], eax
movzx eax, byte [ebx + 4]
or ecx, eax
shl edx, 8
movzx eax, byte [ebx + 2]
or edx, eax
mov dword [ebp - 0x80], ecx
imul edx, dword [edi + 0x24]
mov eax, dword [edi + 0x50]
add edx, dword [edi + 0x30]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0xa8], ecx
dec eax
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x46e82d
nop dword [eax]
movzx ecx, byte [edx + 1]
dec eax
mov dword [ebp - 0x80], eax
movzx eax, byte [edx]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [ebp - 0xa8], ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x46e809
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x46e820
add edx, dword [edi + 0x24]
mov eax, dword [ebp - 0x80]
test eax, eax
jg 0x46e7e0
mov edx, dword [ebp - 0x84]
mov eax, 5
jmp 0x46e88c
mov edx, dword [eax + ecx*4 + 4]
sub edx, dword [eax + ecx*4]
mov dword [ebp - 0x84], edx
mov edx, dword [ebp - 0x84]
mov eax, 5
jmp 0x46e88c
movzx ecx, byte [ebx + 1]
xor eax, eax
cmp edx, 0x72
sete al
shl ecx, 8
mov dword [ebp - 0x9c], eax
movzx eax, byte [ebx + 2]
or ecx, eax
add ecx, ecx
mov dword [ebp - 0xa8], ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x46e877
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x46e877
mov edx, dword [eax + ecx*4 + 4]
sub edx, dword [eax + ecx*4]
jmp 0x46e881
mov edx, dword [edi + 0x50]
neg edx
sbb edx, edx
neg edx
dec edx
mov eax, 3
mov dword [ebp - 0x84], edx
add ebx, eax
mov al, byte [ebx]
mov byte [ebp - 0xad], al
movzx eax, al
mov dword [ebp - 0xb4], eax
add eax, 0xffffff9e
cmp eax, 7
ja case.default.0x46e8b2
movzx eax, byte [eax + 0x470f74]
jmp dword [eax*4 + 0x470f6c]
mov eax, dword [ebp - 0xb4]
lea edx, [eax - 0x62]
and edx, 1
mov dword [ebp - 0x90], edx
movsx edx, byte [eax + 0x4dcf66]
movsx eax, byte [eax + 0x4dcf72]
test eax, eax
cmove eax, dword [ebp - 0xc0]
mov dword [ebp - 0x80], eax
mov eax, 1
jmp 0x46e92e
movzx edx, byte [ebx + 1]
xor eax, eax
cmp byte [ebp - 0xad], 0x69
sete al
shl edx, 8
mov dword [ebp - 0x90], eax
movzx eax, byte [ebx + 2]
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
mov dword [ebp - 0x80], eax
movzx eax, byte [ebx + 4]
or dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
cmove eax, dword [ebp - 0xc0]
mov dword [ebp - 0x80], eax
mov eax, 5
add ebx, eax
mov dword [ebp - 0xa4], edx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x98], ebx
test eax, eax
je 0x46d070
jns 0x46e954
test edx, edx
je 0x46d070
mov ebx, 1
cmp edx, ebx
jl 0x46e999
nop dword [eax]
push dword [ebp - 0x9c]
push edi
push eax
push esi
push ecx
call fcn.00471170
add esp, 0x14
test eax, eax
js 0x470029
mov edx, dword [ebp - 0xa4]
add esi, eax
mov ecx, dword [ebp - 0xa8]
inc ebx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x88], esi
cmp ebx, edx
jle 0x46e960
cmp edx, dword [ebp - 0x80]
jne 0x47004d
mov ebx, dword [ebp - 0x98]
jmp 0x46d070
push dword [ebp - 0x9c]
push edi
push edx
push esi
push ecx
call fcn.00471170
add esp, 0x14
test eax, eax
js 0x4701ea
add esi, eax
mov dword [ebp - 0x88], esi
jmp 0x46d070
mov cl, byte [ebx + 0x21]
lea eax, [ebx + 1]
add ebx, 0x21
movzx edx, cl
mov dword [ebp - 0x98], eax
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x46e9f9
movzx eax, byte [eax + 0x470f84]
jmp dword [eax*4 + 0x470f7c]
lea ecx, [edx - 0x62]
inc ebx
cmp ecx, 8
sbb eax, eax
inc eax
mov dword [ebp - 0xa8], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
sbb edx, edx
and edx, eax
movsx eax, byte [ecx + 0x4dcfd4]
mov dword [ebp - 0xa4], edx
test eax, eax
movsx edx, byte [ecx + 0x4dcfc8]
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x46ea9a
movzx edx, byte [ebx + 1]
xor eax, eax
cmp cl, 0x69
sete al
mov dword [ebp - 0xa4], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [ebx + 3]
sete al
shl edx, 8
mov dword [ebp - 0xa8], eax
movzx eax, byte [ebx + 2]
or edx, eax
shl ecx, 8
movzx eax, byte [ebx + 4]
or ecx, eax
mov eax, SysReAllocString
cmove ecx, eax
add ebx, 5
mov dword [ebp - 0x9c], ecx
jmp 0x46ea9a
mov dword [ebp - 0x9c], 1
mov edx, 1
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x46eaf5
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x88], esi
test byte [edx + ecx], al
je case.0x47063c.14
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46eab0
mov eax, dword [ebp - 0x9c]
cmp edx, eax
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x47020e
mov ecx, esi
mov dword [ebp - 0x84], ecx
cmp edx, eax
jge 0x46eb82
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x46eb5a
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [ebp - 0x98]
test byte [edx + ecx], al
je 0x46eb7c
mov edx, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x80], edx
cmp edx, dword [ebp - 0x9c]
jl 0x46eb20
jmp 0x46eb7c
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46eb7c
cmp esi, dword [edi + 0x84]
jbe 0x46eb7c
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
mov ecx, dword [ebp - 0x84]
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, ecx
jb case.0x47063c.14
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
dec esi
cmp esi, dword [ebp - 0x84]
jae 0x46eb97
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x78]
sub eax, esi
cmp eax, 1
jl 0x470781
mov al, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp byte [ebx + 1], al
jne case.0x47063c.14
add ebx, 2
jmp 0x46d070
cmp esi, dword [edi + 0x78]
jae 0x470781
mov edx, dword [edi + 0x38]
movzx eax, byte [ebx + 1]
movzx ecx, byte [esi]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x47063c.14
inc esi
add ebx, 2
mov dword [ebp - 0x88], esi
jmp 0x46d070
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [ebp - 0x84], ecx
mov edx, ecx
jmp 0x46ed20
mov dword [ebp - 0xa8], 1
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x84], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x84], eax
mov dword [ebp - 0x98], edx
cmp cl, 0x28
je 0x46ec87
mov dword [ebp - 0xa4], edx
cmp cl, 0x35
jne 0x46ec91
mov dword [ebp - 0xa4], 1
add ebx, 3
jmp 0x46ed26
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x84], SysReAllocString
inc ebx
jmp 0x46ed20
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x84], SysReAllocString
inc ebx
jmp 0x46ed20
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x84], 1
inc ebx
jmp 0x46ed20
cmp edx, 0x2e
mov ecx, edx
sbb eax, eax
inc ebx
and eax, 0xfffffff3
add eax, 0x2e
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0xa4], eax
movsx eax, byte [ecx + 0x4dcfd4]
movsx edx, byte [ecx + 0x4dcfc8]
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x98], edx
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0x80], 0x2e
mov dword [ebp - 0x9c], ecx
jb 0x46ee40
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
mov dword [ebp - 0x80], eax
cmp edx, 1
jl 0x46ed7f
mov ecx, 1
nop
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
cmp dword [ebp - 0x9c], eax
je 0x46ed6d
cmp dword [ebp - 0x80], eax
jne case.0x47063c.14
inc esi
inc ecx
mov dword [ebp - 0x88], esi
cmp ecx, edx
jle 0x46ed50
mov ecx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x84]
cmp edx, eax
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x4702b4
mov dword [ebp - 0x90], esi
cmp edx, eax
jge 0x46ede9
cmp esi, dword [edi + 0x78]
jae 0x46edc7
movzx eax, byte [esi]
cmp ecx, eax
je 0x46edb5
cmp dword [ebp - 0x80], eax
jne 0x46ede9
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x84]
jl 0x46eda4
jmp 0x46ede9
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46ede9
cmp esi, dword [edi + 0x84]
jbe 0x46ede9
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, dword [ebp - 0x90]
je 0x46fd15
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
dec esi
add esp, 0x1c
mov dword [ebp - 0x88], esi
test eax, eax
jne 0x470d4c
cmp esi, dword [ebp - 0x90]
jne 0x46ee02
jmp 0x46fd15
mov ecx, 1
cmp edx, ecx
jl 0x46ee74
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp dword [ebp - 0x9c], eax
jne case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46ee50
mov ecx, dword [ebp - 0x84]
cmp edx, ecx
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x47034e
mov eax, esi
mov dword [ebp - 0x80], eax
cmp edx, ecx
jge 0x46eee6
mov ecx, dword [edi + 0x78]
nop dword [eax + eax]
cmp esi, ecx
jae 0x46eec1
movzx eax, byte [esi]
cmp dword [ebp - 0x9c], eax
jne 0x46eee3
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x84]
jl 0x46eea0
jmp 0x46eee3
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46eee3
cmp esi, dword [edi + 0x84]
jbe 0x46eee3
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, eax
je 0x46fd15
nop dword [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
dec esi
add esp, 0x1c
mov dword [ebp - 0x88], esi
test eax, eax
jne 0x470d4c
cmp esi, dword [ebp - 0x80]
jne 0x46ef00
jmp 0x46fd15
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx edx, byte [esi]
inc esi
movzx ecx, byte [ebx + 1]
mov dword [ebp - 0x88], esi
cmp ecx, edx
je case.0x47063c.14
cmp dword [ebp - 0x80], 0x20
jne 0x46ef6f
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.0x47063c.14
add ebx, 2
jmp 0x46d070
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [ebp - 0x84], ecx
mov edx, ecx
jmp 0x46f083
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x84], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x84], eax
mov dword [ebp - 0x98], edx
cmp cl, 0x42
je 0x46efc3
mov dword [ebp - 0xa4], edx
cmp cl, 0x4f
jne 0x46efcd
mov dword [ebp - 0xa4], 1
add ebx, 3
jmp 0x46f089
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x84], SysReAllocString
inc ebx
jmp 0x46f083
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x84], SysReAllocString
inc ebx
jmp 0x46f083
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x84], 1
inc ebx
jmp 0x46f083
movzx ecx, byte [ebx + 1]
xor edx, edx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x84], ecx
add ebx, 3
jmp 0x46f083
cmp edx, 0x48
mov ecx, edx
sbb eax, eax
inc ebx
and eax, 0xfffffff3
add eax, 0x48
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0xa4], eax
movsx eax, byte [ecx + 0x4dcfd4]
movsx edx, byte [ecx + 0x4dcfc8]
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x98], edx
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0x80], 0x48
mov dword [ebp - 0x9c], ecx
jb 0x46f1ab
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
mov ecx, 1
mov dword [ebp - 0x90], eax
cmp edx, ecx
jl 0x46f0e3
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
cmp dword [ebp - 0x9c], eax
je case.0x47063c.14
cmp dword [ebp - 0x90], eax
je case.0x47063c.14
inc esi
inc ecx
mov dword [ebp - 0x88], esi
cmp ecx, edx
jle 0x46f0b3
mov eax, dword [ebp - 0x84]
cmp edx, eax
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x4703e9
mov ecx, esi
mov dword [ebp - 0x80], ecx
cmp edx, eax
jge 0x46f15b
mov ecx, dword [ebp - 0x9c]
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x46f136
movzx eax, byte [esi]
cmp ecx, eax
je 0x46f158
cmp dword [ebp - 0x90], eax
je 0x46f158
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x84]
jl 0x46f110
jmp 0x46f158
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46f158
cmp esi, dword [edi + 0x84]
jbe 0x46f158
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, ecx
je 0x46fd15
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
dec esi
mov dword [ebp - 0x88], esi
cmp esi, dword [ebp - 0x80]
jne 0x46f170
jmp 0x46fd15
mov ecx, 1
cmp edx, ecx
jl 0x46f1d8
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x88], esi
cmp dword [ebp - 0x9c], eax
je case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46f1b4
mov eax, dword [ebp - 0x84]
cmp edx, eax
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x470488
mov ecx, esi
mov dword [ebp - 0x80], ecx
cmp edx, eax
jge 0x46f246
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x46f221
movzx eax, byte [esi]
cmp dword [ebp - 0x9c], eax
je 0x46f243
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x84]
jl 0x46f200
jmp 0x46f243
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46f243
cmp esi, dword [edi + 0x84]
jbe 0x46f243
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, ecx
je 0x46fd15
nop dword [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
dec esi
mov dword [ebp - 0x88], esi
cmp esi, dword [ebp - 0x80]
jne 0x46f260
jmp 0x46fd15
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x98], ecx
mov edx, ecx
add ebx, 3
jmp 0x46f393
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x98], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x98], eax
xor eax, eax
cmp cl, 0x5c
sete al
add ebx, 3
mov dword [ebp - 0xa4], eax
jmp 0x46f393
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x98], SysReAllocString
inc ebx
jmp 0x46f393
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x98], SysReAllocString
inc ebx
jmp 0x46f393
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x98], 1
inc ebx
jmp 0x46f393
movzx ecx, byte [ebx + 1]
xor edx, edx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x98], ecx
add ebx, 3
jmp 0x46f393
lea eax, [edx - 0x55]
inc ebx
movsx edx, byte [eax + 0x4dcfc8]
mov ecx, eax
movsx eax, byte [eax + 0x4dcfd4]
and ecx, 1
mov dword [ebp - 0xa4], ecx
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x80], edx
movzx eax, byte [ebx]
inc ebx
mov dword [ebp - 0x84], eax
test edx, edx
jle 0x46f747
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x4705d3.15
jmp dword [eax*4 + 0x470f90]
mov dword [ebp - 0x90], 1
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x470781
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x46f3f5
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
jne case.0x47063c.14
mov edx, dword [ebp - 0x80]
jmp 0x46f41a
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x46f41a
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46f41a
cmp ecx, 1
je case.0x47063c.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x47063c.14
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x46f44f
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb 0x46f44f
cmp dword [edi + 0x18], 0
jne 0x46f44f
cmp dword [edi + 0x1c], 2
jne 0x46f44f
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46f44f
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x4707ab
mov ecx, dword [ebp - 0x90]
inc esi
inc ecx
mov dword [ebp - 0x90], ecx
cmp ecx, edx
jle 0x46f3c5
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov eax, dword [edi + 0x78]
sub eax, edx
cmp esi, eax
ja 0x470781
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov eax, dword [edi + 0x78]
mov ecx, 1
cmp esi, eax
jae 0x470781
movzx eax, byte [esi]
inc esi
sub eax, 0xa
cmp eax, 0x7b
ja case.0x47063c.14
movzx eax, byte [eax + 0x470fe0]
jmp dword [eax*4 + 0x470fd0]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x46f4d4
cmp byte [esi], 0xa
jne 0x46f4d4
inc esi
jmp 0x46f4d4
cmp dword [edi + 0x68], 0
jne case.0x47063c.14
mov eax, dword [edi + 0x78]
inc ecx
cmp ecx, edx
jle 0x46f492
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov ecx, 1
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
cmp al, 9
je case.0x47063c.14
cmp al, 0x20
je case.0x47063c.14
cmp al, 0xa0
je case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46f4f0
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov ecx, 1
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
cmp al, 9
je 0x46f54c
cmp al, 0x20
je 0x46f54c
cmp al, 0xa0
jne case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46f530
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
cmp al, 0xa
jb 0x46f581
cmp al, 0xd
jbe case.0x47063c.14
cmp al, 0x85
je case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46f561
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x470781
mov al, byte [esi]
inc esi
cmp al, 0xa
jb case.0x47063c.14
cmp al, 0xd
jbe 0x46f5b6
cmp al, 0x85
jne case.0x47063c.14
inc ecx
cmp ecx, edx
jle 0x46f596
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f5d0
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f610
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f650
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f690
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f6d0
mov dword [ebp - 0x88], esi
jmp 0x46f741
mov dword [ebp - 0x90], 1
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x47063c.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x46f710
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x98]
cmp edx, ecx
je 0x46d070
cmp dword [ebp - 0xa4], 0
jne 0x47051b
add eax, 0xfffffffa
mov dword [ebp - 0x9c], esi
cmp eax, 0xf
ja case.0x4705d3.15
jmp dword [eax*4 + 0x47105c]
cmp edx, ecx
jge 0x46f86d
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x46f84b
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x46f7b3
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
jne 0x46f86d
mov edx, dword [ebp - 0x80]
jmp 0x46f7d8
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x46f7d8
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46f7d8
cmp ecx, 1
je 0x46f86d
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je 0x46f86d
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x46f80d
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb 0x46f80d
cmp dword [edi + 0x18], 0
jne 0x46f80d
cmp dword [edi + 0x1c], 2
jne 0x46f80d
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x46f80d
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x4707ab
inc edx
inc esi
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x80], edx
cmp edx, dword [ebp - 0x98]
jl 0x46f783
jmp 0x46f86d
sub ecx, edx
mov dword [ebp - 0x98], ecx
mov ecx, dword [edi + 0x78]
mov eax, ecx
mov edx, dword [ebp - 0x98]
sub eax, esi
cmp edx, eax
jbe 0x46f8e8
mov esi, ecx
mov dword [ebp - 0x88], esi
mov eax, dword [edi + 0x88]
test eax, eax
je 0x46f86d
cmp esi, dword [edi + 0x84]
jbe 0x46f86d
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4707ab
cmp dword [ebp - 0xa8], 0
jne 0x46d070
cmp esi, dword [ebp - 0x9c]
je 0x46fd15
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov ecx, dword [ebp - 0x9c]
dec esi
cmp dword [ebp - 0x84], 0x11
mov dword [ebp - 0x88], esi
jne 0x46f8df
cmp esi, ecx
jbe 0x46f8e1
cmp byte [esi], 0xa
jne 0x46f8df
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
cmove esi, eax
mov dword [ebp - 0x88], esi
cmp esi, ecx
jne 0x46f886
jmp 0x46fd15
add esi, edx
mov dword [ebp - 0x88], esi
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x46f84b
mov al, byte [esi]
cmp al, 0xd
jne 0x46f924
inc esi
mov dword [ebp - 0x88], esi
cmp esi, ecx
jae 0x46f86d
cmp byte [esi], 0xa
jne 0x46f949
jmp 0x46f942
cmp al, 0xa
je 0x46f942
cmp dword [edi + 0x68], 0
jne 0x46f86d
cmp al, 0xb
je 0x46f942
cmp al, 0xc
je 0x46f942
cmp al, 0x85
jne 0x46f86d
inc esi
mov dword [ebp - 0x88], esi
inc edx
cmp edx, dword [ebp - 0x98]
jl 0x46f900
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x46f84b
mov al, byte [esi]
cmp al, 9
je 0x46f86d
cmp al, 0x20
je 0x46f86d
cmp al, 0xa0
je 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46f962
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x46f84b
mov al, byte [esi]
cmp al, 9
je 0x46f9be
cmp al, 0x20
je 0x46f9be
cmp al, 0xa0
jne 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46f9a4
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x46f84b
mov al, byte [esi]
cmp al, 0xa
jb 0x46f9fe
cmp al, 0xd
jbe 0x46f86d
cmp al, 0x85
je 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46f9e0
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x46f84b
mov al, byte [esi]
cmp al, 0xa
jb 0x46f86d
cmp al, 0xd
jbe 0x46fa3e
cmp al, 0x85
jne 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fa20
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
nop dword [eax + eax]
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fa60
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fa96
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fad0
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fb06
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fb40
jmp 0x46f86d
cmp edx, ecx
jge 0x46f86d
cmp esi, dword [edi + 0x78]
jae 0x46f84b
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x46f86d
inc esi
inc edx
mov dword [ebp - 0x88], esi
cmp edx, dword [ebp - 0x98]
jl 0x46fb76
jmp 0x46f86d
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x46fbd6
inc eax
push eax
push dword [ebp - 0xa0]
lea eax, [ebx + 3]
push edi
push ecx
push edx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov ebx, dword [ebp - 0x90]
jmp 0x46fd15
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push ecx
push edx
push dword [ebp - 0x90]
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
add ebx, 3
jmp 0x46fd15
cmp al, 0x7a
mov eax, dword [ebp + 0x20]
jne 0x46fc48
inc eax
push eax
push dword [ebp - 0xa0]
lea eax, [ebx + 3]
push edi
push ecx
push dword [ebp - 0x94]
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov ecx, dword [ebp - 0x80]
mov al, byte [ecx]
cmp al, 0x81
je 0x46ff51
cmp al, 0x88
jae 0x46ff1e
mov ebx, ecx
jmp 0x46fd15
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push ecx
push dword [ebp - 0x94]
push edx
push esi
call fcn.0046cf90
mov ecx, eax
add esp, 0x1c
cmp ecx, 0xfffffc1b
jne 0x46fc7d
mov eax, dword [ebp - 0x80]
cmp dword [edi + 0xb4], eax
jne 0x470a63
jmp 0x46fc88
test ecx, ecx
jne 0x470a63
mov eax, dword [ebp - 0x80]
add ebx, 3
cmp byte [eax], 0x81
jne 0x46fd15
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
jmp 0x46ff6a
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x90], edx
lea eax, [edx + edx]
mov dword [ebp - 0xac], eax
cmp eax, dword [edi + 0x14]
jl 0x4707c1
mov edx, dword [ebp - 0x80]
nop word [eax + eax]
cmp edx, 0x88
jae 0x46fd2b
cmp edx, 0x81
je 0x46fd2b
cmp dword [edi + 0x6c], 0
jne 0x46fd35
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + ebx], 0x77
je 0x46fd35
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x4dcfe0]
add ebx, eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x470d44
mov ecx, dword [ebp - 0xa0]
jmp 0x46d032
mov dword [edi + 0x98], 2
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
mov dword [ebp - 0xac], eax
cmp eax, 0xfffffc20
jne 0x46fdb0
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x470d4c
cmp byte [ebx], 0x77
je 0x46fdb8
cmp byte [edx], 0x77
jne 0x470d4c
jmp 0x46fdb8
test eax, eax
jne 0x47092f
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xb4]
add ebx, ecx
mov dword [edi + 0xac], eax
cmp byte [ebx], 0x77
jne case.0x47063c.14
mov eax, dword [ebp - 0xb8]
mov dword [edi + 0x90], eax
jmp 0x46fcd7
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
lea eax, [ebx + 2]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
sub eax, 1
je case.0x47063c.14
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffe6
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xd8]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0xd0]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je case.0x47063c.14
push eax
call dword [0x4ff624]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xd0]
lea edx, [ebp - 0x7c]
cmp ecx, edx
je 0x470d4c
push ecx
call dword [0x4ff624]
mov eax, dword [ebp - 0x90]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffa
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x94]
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], eax
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ecx
push esi
call fcn.0046cf90
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ecx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x46e114
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x94]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [edi + 0x80], esi
mov dword [edi + 0x8c], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x8c]
mov dword [edi + 0x8c], eax
mov eax, dword [ebp - 0x94]
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x47063c.14
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x47063c.14
cmp dword [edi + 0x18], 0
jne case.0x47063c.14
cmp dword [edi + 0x1c], 2
jne case.0x47063c.14
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x47063c.14
cmp ecx, 1
jmp 0x47079e
cmp eax, 0xfffffffe
jne 0x470031
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x47063c.14
cmp esi, dword [edi + 0x78]
jb case.0x47063c.14
jmp 0x47078f
cmp dword [ebp - 0x90], 0
je 0x470122
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov ebx, dword [ebp - 0xa8]
nop
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0xa4], eax
jge case.0x47063c.14
push dword [ebp - 0x9c]
push edi
push dword [ebp - 0x84]
push esi
push ebx
call fcn.00471170
add esp, 0x14
test eax, eax
js 0x4700fe
inc dword [ebp - 0xa4]
add esi, eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470090
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffffe
jne 0x470106
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x47063c.14
cmp esi, dword [edi + 0x78]
jb case.0x47063c.14
jmp 0x47078f
mov ebx, esi
cmp edx, dword [ebp - 0x80]
jge 0x4701a0
nop dword [eax]
push dword [ebp - 0x9c]
push edi
push eax
push esi
push ecx
call fcn.00471170
add esp, 0x14
test eax, eax
js 0x470168
mov ecx, dword [ebp - 0xa8]
add esi, eax
mov eax, dword [ebp - 0xa4]
inc eax
cmp eax, dword [ebp - 0x80]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x84]
jl 0x470130
jmp 0x470192
cmp eax, 0xfffffffe
jne 0x470192
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x470192
mov eax, dword [edi + 0x78]
cmp eax, dword [edi + 0x84]
jbe 0x470192
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x4707ab
cmp esi, ebx
jb case.0x47063c.14
nop word [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
sub esi, dword [ebp - 0x84]
cmp esi, ebx
jae 0x4701a0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffffe
jne 0x4701f2
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x47063c.14
cmp esi, dword [edi + 0x78]
jb case.0x47063c.14
jmp 0x47078f
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
nop dword [eax + eax]
mov eax, dword [ebp - 0x9c]
cmp dword [ebp - 0x80], eax
jge case.0x47063c.14
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x98]
test byte [edx + ecx], al
je case.0x47063c.14
mov eax, dword [ebp + 0x20]
inc dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470240
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
nop
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0x84]
jge case.0x47063c.14
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
cmp dword [ebp - 0x9c], ecx
je 0x47030f
cmp dword [ebp - 0x80], ecx
jne case.0x47063c.14
inc eax
inc esi
mov dword [ebp - 0x98], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x4702e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
nop dword [eax + eax]
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x84]
jge case.0x47063c.14
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x9c], eax
jne case.0x47063c.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x98], ecx
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470380
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0x84]
jge case.0x47063c.14
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx ecx, byte [esi]
cmp dword [ebp - 0x9c], ecx
je case.0x47063c.14
cmp dword [ebp - 0x90], ecx
je case.0x47063c.14
inc eax
inc esi
mov dword [ebp - 0x98], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470413
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x84]
jge case.0x47063c.14
cmp esi, dword [edi + 0x78]
jae 0x470781
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x9c], eax
je case.0x47063c.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x98], ecx
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x4704b2
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
nop word [eax + eax]
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [ebp - 0x98]
jge case.0x47063c.14
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x470781
cmp dword [ebp - 0x84], 0xc
jne 0x4705bd
mov edx, dword [edi + 0x18]
test edx, edx
je 0x470598
push 0
lea ecx, [edi + 0x1c]
push ecx
push eax
push edx
push esi
call fcn.00471f70
add esp, 0x14
test eax, eax
jne case.0x47063c.14
mov ecx, dword [ebp - 0x80]
jmp 0x4705bd
mov edx, dword [edi + 0x1c]
sub eax, edx
cmp esi, eax
ja 0x4705bd
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x4705bd
cmp edx, 1
je case.0x47063c.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x47063c.14
mov eax, dword [ebp - 0x84]
movzx edx, byte [esi]
add eax, 0xfffffffa
inc esi
cmp eax, 0xf
ja case.0x4705d3.15
jmp dword [eax*4 + 0x47109c]
cmp dword [edi + 0x88], 0
je case.0x4705d3.13
cmp esi, dword [edi + 0x78]
jb case.0x4705d3.13
cmp dword [edi + 0x18], 0
jne case.0x4705d3.13
cmp dword [edi + 0x1c], 2
jne case.0x4705d3.13
movzx eax, byte [edi + 0x34]
cmp edx, eax
jne case.0x4705d3.13
cmp dword [edi + 0x88], 1
mov dword [edi + 0x64], 1
jg 0x4707ab
jmp case.0x4705d3.13
add edx, 0xfffffff6
cmp edx, 0x7b
ja case.0x47063c.14
movzx eax, byte [edx + 0x4710ec]
jmp dword [eax*4 + 0x4710dc]
cmp esi, dword [edi + 0x78]
jae case.0x4705d3.13
cmp byte [esi], 0xa
jne case.0x4705d3.13
inc esi
jmp case.0x4705d3.13
cmp dword [edi + 0x68], 0
jne case.0x47063c.14
jmp case.0x4705d3.13
cmp edx, 9
je case.0x47063c.14
cmp edx, 0x20
je case.0x47063c.14
cmp edx, 0xa0
jmp 0x470726
cmp edx, 9
je case.0x4705d3.13
cmp edx, 0x20
je case.0x4705d3.13
cmp edx, 0xa0
jne case.0x47063c.14
jmp case.0x4705d3.13
cmp edx, 0xa
jb case.0x4705d3.13
cmp edx, 0xd
jbe case.0x47063c.14
cmp edx, 0x85
jmp 0x470726
cmp edx, 0xa
jb case.0x47063c.14
cmp edx, 0xd
jbe case.0x4705d3.13
cmp edx, 0x85
jne case.0x47063c.14
jmp case.0x4705d3.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
jne case.0x47063c.14
jmp case.0x4705d3.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
jmp 0x470726
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
jne case.0x47063c.14
jmp case.0x4705d3.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
jmp 0x470726
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
jne case.0x47063c.14
jmp case.0x4705d3.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
je case.0x47063c.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x80], ecx
push eax
push dword [ebp - 0xa0]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x94]
push ebx
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470550
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffff2
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x47063c.14
cmp esi, dword [edi + 0x84]
jbe case.0x47063c.14
cmp eax, 1
mov dword [edi + 0x64], 1
jle case.0x47063c.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0xc]
mov edx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [ebp - 0x9c], eax
mov eax, dword [edi + 0x10]
sub eax, dword [ebp - 0x90]
lea ecx, [ecx + eax*4]
mov dword [ebp - 0xbc], edx
mov eax, dword [ecx]
mov dword [ebp - 0x84], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xb8], eax
mov eax, esi
sub eax, dword [edi + 0x74]
mov dword [ecx], eax
nop word [eax + eax]
cmp dword [ebp - 0x80], 0x88
jb 0x470823
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
mov edx, eax
add esp, 0x1c
mov dword [ebp - 0xc0], edx
cmp edx, 0xfffffc1b
je 0x4708cf
cmp edx, 0xfffffc20
jne 0x470897
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x470916
cmp byte [ebx], 0x77
je 0x470893
cmp byte [edx], 0x77
jne 0x470916
xor edx, edx
jmp 0x47089f
test edx, edx
jne 0x47091c
mov eax, dword [ebp - 0xb4]
mov dword [edi + 0x90], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xb8]
add ebx, ecx
mov dword [edi + 0xac], eax
cmp byte [ebx], 0x77
je 0x470810
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0xac]
mov ebx, dword [ebp - 0xbc]
mov esi, dword [ebp - 0x9c]
mov dword [eax + ecx*4], ebx
mov eax, dword [edi + 0xc]
mov dword [eax + ecx*4 + 4], esi
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
sub ecx, dword [ebp - 0x90]
mov esi, dword [ebp - 0x84]
pop edi
mov dword [eax + ecx*4], esi
mov eax, edx
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xc0]
pop edi
pop esi
mov eax, edx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffc1b
jne 0x470d4c
mov cl, byte [ebx]
cmp cl, 0x81
je 0x470979
cmp cl, 0x77
jne 0x470964
nop word [eax + eax]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x470950
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xac]
sub ebx, ecx
xor ecx, ecx
cmp dword [edi + 0xb4], ebx
pop edi
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
movzx ecx, byte [ebx + 1]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0046cf90
mov ecx, eax
add esp, 0x1c
mov dword [ebp - 0xb8], ecx
cmp ecx, 1
je 0x4709f7
cmp ecx, 0xfffffc19
jne 0x470a1c
cmp dword [edi + 0xac], 0
jne 0x470a1c
lea eax, [ebx + 2]
mov dword [edi + 0xac], eax
mov eax, ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
cmp ecx, 0xfffffc1f
jne 0x470a63
mov ecx, dword [edi + 0x7c]
mov eax, dword [ebp - 0xb4]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x470a50
test dl, dl
je 0x470a4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x470a50
add eax, 2
add ecx, 2
test dl, dl
jne 0x470a30
xor eax, eax
jmp 0x470a55
sbb eax, eax
or eax, 1
test eax, eax
je 0x470bc1
mov ecx, dword [ebp - 0xb8]
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, cl
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
mov ecx, 0xfffffc1c
test eax, eax
cmovne ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, cl
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470b75
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0046cf90
add esp, 0x1c
cmp eax, 1
je 0x470b5b
cmp eax, 0xfffffc19
jne 0x470b6d
cmp dword [edi + 0xac], 0
jne 0x470b6d
lea ecx, [ebx + 2]
mov dword [edi + 0xac], ecx
test eax, eax
jne 0x470d4c
pop edi
pop esi
mov eax, 0xfffffc1d
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, cl
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
jne 0x470d4c
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, cl
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
push eax
push esi
call fcn.0046cf90
add esp, 0x1c
test eax, eax
je 0x470c8e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa0]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x4dcfe0]
push dword [ebp - 0x94]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0046cf90
add esp, 0x1c
cmp eax, 1
je 0x470c74
cmp eax, 0xfffffc19
jne 0x470c86
cmp dword [edi + 0xac], 0
jne 0x470c86
lea ecx, [ebx + 2]
mov dword [edi + 0xac], ecx
test eax, eax
jne 0x470d4c
mov dword [edi + 0x7c], ebx
mov eax, 0xfffffc20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x94]
cmp esi, ecx
jne 0x470ce3
cmp edx, 0x9f
je 0x470ce3
cmp dword [edi + 0xa4], 0
jne 0x470ce3
cmp dword [edi + 0x5c], 0
jne case.0x47063c.14
cmp dword [edi + 0x60], 0
je 0x470ce3
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp ecx, eax
je case.0x47063c.14
mov eax, dword [ebp - 0x8c]
test edx, edx
mov dword [edi + 0x8c], eax
mov eax, 0xfffffc19
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], ecx
mov ecx, 1
pop edi
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffb
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffeb
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00488f07
mov esp, ebp
pop ebp
ret
inc eax
mov dword [edi], eax
mov eax, 0xfffffff8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00488f07
mov esp, ebp
pop ebp
ret