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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x114
push ebx
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, edx
mov ebx, ecx
jmp 0x419dce
mov eax, dword [ebp + 0x24]
cmp eax, dword [esi + 8]
jae 0x419de2
test byte [ebp + 0x20], 2
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x18], eax
je 0x417ec9
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x34], ebx
mov dword [ebp + 0x1c], eax
mov cl, byte [edi]
and dword [ebp - 0x10], 0
and dword [ebp - 0x14], 0
movzx eax, cl
mov dword [ebp - 4], eax
cmp eax, 0x76
ja case.0x417ee9.15
movzx edx, byte [eax + 0x41a9c2]
jmp dword [edx*4 + 0x41a89a]
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
cmp byte [edi + 3], 0x53
mov dword [ebp + 0x14], eax
jne 0x417f9f
cmp dword [0x440584], 0
je 0x417f9c
movzx eax, byte [edi + 4]
mov ecx, dword [esi + 0x6c]
mov dword [ebp - 0x64], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x60], eax
mov eax, dword [esi + 0x68]
sub ecx, eax
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp + 8]
sub ecx, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x54], ecx
mov ecx, ebx
sub ecx, eax
movzx eax, byte [edi + 5]
shl eax, 8
mov dword [ebp - 0x50], ecx
movzx ecx, byte [edi + 6]
or eax, ecx
movzx ecx, byte [edi + 8]
mov dword [ebp - 0x40], eax
movzx eax, byte [edi + 7]
shl eax, 8
or eax, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x4c], eax
mov eax, dword [esi + 0x84]
mov dword [ebp - 0x48], eax
mov eax, dword [esi + 0x98]
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x68], 1
mov dword [ebp - 0x44], eax
call dword [0x440584]
test eax, eax
jg case.0x417ee9.115
js 0x41a892
add edi, 6
lea edx, [edi + 3]
movzx ecx, byte [edx]
mov dword [ebp - 0x10], ecx
cmp ecx, 0x66
je 0x41819a
cmp ecx, 0x67
je 0x41819a
cmp ecx, 0x64
je 0x41801a
cmp ecx, 0x65
je 0x41801a
cmp ecx, 0x68
jne 0x417fdd
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
jmp 0x41815f
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 1
push 0
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
cmp eax, 1
je 0x419ca9
test eax, eax
je 0x418012
cmp eax, 0xfffffc1e
jne 0x41a892
add edi, dword [ebp + 0x14]
jmp 0x41815f
movzx eax, byte [edi + 4]
movzx edx, byte [edi + 5]
shl eax, 8
or eax, edx
add eax, eax
cmp eax, dword [ebp + 0x10]
jge 0x41803b
mov edx, dword [esi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x4182da
and dword [ebp - 0xc], 0
cmp ecx, 0x65
jne 0x41814a
mov ecx, dword [esi + 0x28]
and dword [ebp + 0x14], 0
sar eax, 1
cmp dword [esi + 0x20], 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], ecx
jle 0x41807f
movzx eax, byte [ecx]
movzx edx, byte [ecx + 1]
shl eax, 8
or eax, edx
cmp eax, dword [ebp - 0x10]
je 0x41807f
add ecx, dword [esi + 0x24]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x14], ecx
cmp eax, dword [esi + 0x20]
jl 0x41805d
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jge 0x41814a
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
cmp eax, dword [esi + 0x28]
jbe 0x4180e2
mov eax, dword [ebp - 0x10]
sub eax, dword [esi + 0x24]
mov dword [ebp - 0x10], eax
add eax, 2
push eax
mov eax, dword [ebp - 0x14]
add eax, 2
push eax
call dword [sym.imp.msvcrt.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x4180e2
mov ecx, dword [ebp - 0x10]
movzx eax, byte [ecx]
movzx edx, byte [ecx + 1]
shl eax, 8
or eax, edx
add eax, eax
cmp eax, dword [ebp + 0x10]
jge 0x4180d9
mov edx, dword [esi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x4182da
and dword [ebp - 0xc], 0
cmp ecx, dword [esi + 0x28]
ja 0x418096
mov eax, dword [ebp - 0x14]
inc dword [ebp + 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jge 0x41814a
mov eax, dword [ebp - 0x14]
add eax, 2
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
add eax, dword [esi + 0x24]
mov dword [ebp - 0x10], eax
add eax, 2
push eax
push dword [ebp - 0x14]
call dword [sym.imp.msvcrt.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x41814a
mov ecx, dword [ebp - 0x10]
movzx eax, byte [ecx]
movzx ecx, byte [ecx + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [ebp + 0x10]
jge 0x41813b
mov ecx, dword [esi + 0xc]
cmp dword [ecx + eax*4], 0
jge 0x4182da
and dword [ebp - 0xc], 0
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jl 0x4180fc
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp dword [ebp - 0xc], 0
jne 0x418168
cmp byte [edi], 0x54
jne 0x4184c2
add edi, 3
cmp dword [ebp - 4], 0x63
jne 0x419dca
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 2
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
jmp 0x41a892
mov edx, dword [esi + 0x94]
test edx, edx
je 0x417fc9
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 5]
shl eax, 8
or eax, ecx
mov dword [ebp - 8], eax
cmp eax, 0xffff
je 0x4182da
cmp eax, dword [edx + 4]
je 0x4182da
and dword [ebp - 0xc], 0
cmp dword [ebp - 0x10], 0x67
jne 0x41814a
mov eax, dword [esi + 0x28]
and dword [ebp + 0x14], 0
cmp dword [esi + 0x20], 0
mov dword [ebp - 0x14], eax
jle 0x41820c
movzx ecx, byte [eax]
movzx edx, byte [eax + 1]
shl ecx, 8
or ecx, edx
cmp ecx, dword [ebp - 8]
je 0x41820c
add eax, dword [esi + 0x24]
inc dword [ebp + 0x14]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x14], eax
cmp ecx, dword [esi + 0x20]
jl 0x4181ea
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jge 0x41814a
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
cmp eax, dword [esi + 0x28]
jbe 0x41826a
mov eax, dword [ebp - 0x10]
sub eax, dword [esi + 0x24]
mov dword [ebp - 0x10], eax
add eax, 2
push eax
mov eax, dword [ebp - 0x14]
add eax, 2
push eax
call dword [sym.imp.msvcrt.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x41826a
mov ecx, dword [ebp - 0x10]
movzx edx, byte [ecx]
movzx eax, byte [ecx + 1]
shl edx, 8
or eax, edx
mov edx, dword [esi + 0x94]
sub eax, dword [edx + 4]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0xc], eax
jne 0x4182e1
cmp ecx, dword [esi + 0x28]
ja 0x418223
mov eax, dword [ebp - 0x14]
inc dword [ebp + 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jge 0x41814a
mov eax, dword [ebp - 0x14]
add eax, 2
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
add eax, dword [esi + 0x24]
mov dword [ebp - 0x10], eax
add eax, 2
push eax
push dword [ebp - 0x14]
call dword [sym.imp.msvcrt.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x41814a
mov ecx, dword [ebp - 0x10]
movzx eax, byte [ecx + 1]
movzx ecx, byte [ecx]
shl ecx, 8
or eax, ecx
mov ecx, dword [esi + 0x94]
sub eax, dword [ecx + 4]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0xc], eax
jne 0x4182e1
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [esi + 0x20]
jl 0x418288
jmp 0x41814a
mov dword [ebp - 0xc], 1
push 3
pop eax
jmp 0x418157
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
lea edx, [eax + eax]
mov dword [ebp - 0x10], edx
mov dword [esi + 0x84], eax
cmp edx, dword [esi + 0x14]
jl 0x418313
mov dword [esi + 0x38], 1
jmp 0x4184c2
mov ecx, dword [esi + 0xc]
shl edx, 2
mov dword [ebp + 0x14], edx
mov edx, dword [esi + 0x10]
sub edx, eax
mov edx, dword [ecx + edx*4]
mov eax, dword [ebp + 0x14]
mov dword [eax + ecx], edx
mov edx, dword [esi + 0xc]
mov ecx, ebx
sub ecx, dword [esi + 0x68]
mov dword [eax + edx + 4], ecx
mov eax, dword [ebp - 0x10]
cmp dword [ebp + 0x10], eax
jg 0x4184c2
add eax, 2
mov dword [ebp + 0x10], eax
jmp 0x4184c2
mov edi, dword [esi + 0x94]
xor ecx, ecx
cmp edi, ecx
je 0x41a144
cmp dword [edi + 4], ecx
jne 0x41a144
mov ecx, dword [edi]
mov dword [esi + 0x94], ecx
mov eax, dword [edi + 0x10]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [esi + 0xc]
call dword [sym.imp.msvcrt.dll_memmove]
mov eax, dword [edi + 0x14]
mov edi, dword [edi + 8]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x18]
add esp, 0xc
mov dword [ebp + 0x18], eax
jmp 0x417ec9
movzx eax, byte [edi + 1]
mov dword [ebp + 0x18], eax
add edi, 2
jmp 0x417ec9
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push 0
push dword [ebp + 0x18]
lea edx, [edi + 3]
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
cmp eax, 1
je 0x4183f8
cmp eax, 0xfffffc19
je 0x4183f8
test eax, eax
je 0x4183e2
cmp eax, 0xfffffc1e
jne 0x41a892
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je case.0x417ee9.88
jmp 0x4183fe
mov eax, dword [esi + 0x70]
mov dword [ebp + 8], eax
cmp byte [edi], 0x55
je 0x41a0fc
test byte [ebp + 0x20], 1
jne 0x41a18e
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x418411
mov eax, dword [esi + 0x80]
add edi, 3
mov dword [ebp + 0x10], eax
jmp 0x417ec9
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push 0
push dword [ebp + 0x18]
lea edx, [edi + 3]
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
cmp eax, 1
je 0x41a0fc
cmp eax, 0xfffffc19
je 0x41a0fc
cmp eax, 0xfffffc1c
je 0x4184a4
cmp eax, 0xfffffc1b
je 0x4184a4
cmp eax, 0xfffffc1a
je 0x4184a4
test eax, eax
je 0x41848e
cmp eax, 0xfffffc1e
jne 0x41a892
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je case.0x417ee9.89
jmp 0x4184b8
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x4184a4
test byte [ebp + 0x20], 1
jne 0x41a18e
add edi, 3
jmp 0x417ec9
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
sub ebx, eax
cmp ebx, dword [esi + 0x68]
jb 0x41a0fc
cmp ebx, dword [esi + 0x78]
jae 0x4184c2
mov dword [esi + 0x78], ebx
jmp 0x4184c2
cmp dword [0x440584], 0
je 0x418593
movzx eax, byte [edi + 1]
mov ecx, dword [esi + 0x6c]
mov dword [ebp - 0x94], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x90], eax
mov eax, dword [esi + 0x68]
sub ecx, eax
mov dword [ebp - 0x88], ecx
mov ecx, dword [ebp + 8]
sub ecx, eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x84], ecx
mov ecx, ebx
sub ecx, eax
movzx eax, byte [edi + 2]
shl eax, 8
mov dword [ebp - 0x80], ecx
movzx ecx, byte [edi + 3]
or eax, ecx
movzx ecx, byte [edi + 5]
mov dword [ebp - 0x70], eax
movzx eax, byte [edi + 4]
shl eax, 8
or eax, ecx
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x7c], eax
mov eax, dword [esi + 0x84]
mov dword [ebp - 0x78], eax
mov eax, dword [esi + 0x98]
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x98], 1
mov dword [ebp - 0x74], eax
call dword [0x440584]
test eax, eax
jg case.0x417ee9.115
js 0x41a892
add edi, 6
jmp 0x417ec9
mov dword [ebp + 0x14], edi
mov dword [ebp - 0x10], ebx
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push dword [ebp + 0x1c]
lea edx, [edi + 3]
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
cmp eax, 1
je 0x4185ec
test eax, eax
je 0x4185d6
cmp eax, 0xfffffc1e
jne 0x41a892
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x4185a1
jmp 0x4185f2
mov eax, dword [esi + 0x70]
mov dword [ebp + 8], eax
mov al, byte [edi]
cmp al, 0x5d
je 0x418600
cmp al, 0x54
jne 0x41a105
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x418600
cmp byte [edi], 0x55
mov eax, dword [esi + 0x80]
mov ebx, dword [esi + 0x74]
mov dword [ebp + 0x10], eax
je 0x4184c2
cmp ebx, dword [ebp - 0x10]
je 0x4184c2
lea eax, [edi + 3]
cmp byte [eax], 0x19
mov dword [ebp + 0x20], eax
jne 0x41864c
mov ecx, dword [ebp + 0x18]
movzx eax, byte [edi + 4]
and ecx, 0xfffffff8
or eax, ecx
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x24]
inc eax
cmp byte [edi], 0x57
mov ecx, ebx
push eax
jne 0x419d78
mov edx, dword [ebp + 0x20]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov edi, dword [ebp + 0x14]
jmp 0x419dca
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je case.0x417ee9.84
jmp 0x417ec9
mov eax, dword [ebp + 0x24]
inc edi
inc eax
push eax
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x4186c8
jmp 0x4184c2
inc edi
mov eax, edi
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
je 0x4186e4
mov ecx, dword [ebp + 0x24]
inc ecx
push ecx
push 0
push dword [ebp + 0x1c]
lea edx, [eax + 3]
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
jmp 0x417ec9
inc edi
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x418727
jmp 0x4184c2
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, edi
sub eax, ecx
cmp byte [eax], 0x61
mov dword [ebp + 0x14], eax
jb 0x418769
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [ebp - 0x10], edx
mov dword [ebp + 0x1c], ecx
jmp 0x41876d
and dword [ebp - 0x10], 0
mov cl, byte [eax]
cmp cl, 0x58
je 0x41a340
cmp cl, 0x59
je 0x41a340
cmp cl, 0x5a
je 0x41a340
cmp cl, 0x5b
je 0x41a340
cmp cl, 0x5d
je 0x41a340
cmp cl, 0x5f
je 0x4187aa
cmp cl, 0x62
jne 0x418845
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
lea edx, [ecx + ecx]
mov dword [ebp - 0xc], ecx
mov dword [esi + 0x84], ecx
cmp edx, dword [esi + 0x14]
jl 0x4187d1
mov dword [esi + 0x38], 1
jmp 0x4187ff
mov eax, dword [esi + 0xc]
mov ecx, edx
mov edx, dword [esi + 0x10]
sub edx, dword [ebp - 0xc]
mov edx, dword [eax + edx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [esi + 0xc]
mov eax, ebx
sub eax, dword [esi + 0x68]
mov dword [edx + ecx*4 + 4], eax
mov ecx, dword [ebp - 0xc]
lea eax, [ecx + ecx]
cmp dword [ebp + 0x10], eax
jg 0x4187ff
add eax, 2
mov dword [ebp + 0x10], eax
mov edx, dword [esi + 0x94]
test edx, edx
je 0x418842
cmp dword [edx + 4], ecx
jne 0x418842
mov edi, edx
mov ecx, dword [edi]
mov dword [esi + 0x94], ecx
mov eax, dword [edi + 0x10]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [esi + 0xc]
call dword [sym.imp.msvcrt.dll_memcpy]
mov eax, dword [edi + 0x14]
mov edi, dword [edi + 8]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x18]
add esp, 0xc
mov dword [ebp + 0x18], eax
jmp 0x417ec9
mov eax, dword [ebp + 0x14]
cmp byte [edi], 0x55
mov ecx, dword [ebp - 0x18]
mov dword [ebp + 0x18], ecx
je 0x4184c2
cmp ebx, dword [ebp - 0x10]
je 0x4184c2
cmp byte [eax], 0x61
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
cmp byte [edi], 0x57
mov dword [ebp + 0x20], eax
jne 0x419d9f
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push dword [ebp + 0x1c]
lea edx, [edi + 3]
push ecx
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
cmp dword [ebp + 0x20], eax
jne 0x41a32a
mov edi, dword [ebp + 0x14]
jmp 0x419dce
cmp dword [esi + 0x3c], 0
je 0x4188bb
cmp ebx, dword [esi + 0x68]
je 0x41a0fc
test byte [ebp + 0x18], 2
je case.0x417ee9.1
mov ecx, dword [esi + 0x68]
cmp ebx, ecx
je 0x418925
cmp ebx, dword [esi + 0x6c]
je 0x41a0fc
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4188f8
cmp ebx, ecx
jbe 0x41a0fc
push 0
push ecx
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.004093ca
test eax, eax
je 0x41a0fc
jmp 0x418925
mov eax, dword [esi + 0x1c]
add ecx, eax
cmp ebx, ecx
jb 0x41a0fc
mov ecx, ebx
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [esi + 0x2c]
jne 0x41a0fc
cmp eax, 1
je 0x418925
mov al, byte [ecx + 1]
cmp al, byte [esi + 0x2d]
jne 0x41a0fc
inc edi
jmp 0x417ec9
cmp ebx, dword [esi + 0x68]
jmp 0x41891f
mov eax, dword [esi + 0x88]
add eax, dword [esi + 0x68]
cmp ebx, eax
jmp 0x41891f
mov dword [ebp + 8], ebx
jmp 0x418925
test byte [ebp + 0x18], 2
je 0x41898d
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
jae 0x418987
mov eax, dword [esi + 0x18]
test eax, eax
je 0x418965
push 0
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
jmp 0x4188ee
mov eax, dword [esi + 0x1c]
sub ecx, eax
cmp ebx, ecx
ja 0x41a0fc
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne 0x41a0fc
cmp eax, 1
je 0x418925
mov al, byte [ebx + 1]
jmp 0x41891c
cmp dword [esi + 0x40], 0
jmp 0x41891f
cmp dword [esi + 0x40], 0
jne 0x41a0fc
cmp dword [esi + 0x50], 0
jne case.0x417ee9.24
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
je 0x418925
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4189ca
cmp ebx, ecx
jae 0x41a0fc
push 0
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
je 0x41a0fc
jmp 0x4189f3
mov eax, dword [esi + 0x1c]
sub ecx, eax
cmp ebx, ecx
ja 0x41a0fc
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne 0x41a0fc
cmp eax, 1
je 0x4189f3
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x2d]
jne 0x41a0fc
mov eax, dword [esi + 0x6c]
sub eax, dword [esi + 0x1c]
jmp 0x418939
cmp ebx, dword [esi + 0x6c]
jb 0x41a0fc
jmp 0x418925
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
je 0x418925
mov eax, dword [esi + 0x18]
test eax, eax
je 0x418a43
cmp ebx, ecx
jae case.0x417ee9.115
push 0
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
jne 0x418a60
xor eax, eax
mov ecx, dword [ebp + 0xc]
mov dword [esi + 0x9c], ecx
jmp 0x41a892
mov eax, dword [esi + 0x1c]
sub ecx, eax
cmp ebx, ecx
ja case.0x417ee9.115
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne case.0x417ee9.115
cmp eax, 1
je 0x418a60
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x2d]
jne case.0x417ee9.115
mov eax, dword [esi + 0x6c]
sub eax, dword [esi + 0x1c]
cmp ebx, eax
jne case.0x417ee9.115
jmp 0x418925
cmp ebx, dword [esi + 0x68]
jne 0x418a78
xor ecx, ecx
jmp 0x418a94
cmp ebx, dword [esi + 0x78]
ja 0x418a83
lea eax, [ebx - 1]
mov dword [esi + 0x78], eax
movzx eax, byte [ebx - 1]
mov ecx, dword [esi + 0x34]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
cmp ebx, dword [esi + 0x6c]
jb 0x418ab7
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x418ab3
cmp ebx, dword [ebp + 8]
jbe 0x418ab3
xor edx, edx
inc edx
mov dword [esi + 0x5c], edx
cmp eax, edx
jg 0x418b66
xor eax, eax
jmp 0x418ac7
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
movzx eax, byte [edx + eax]
shr eax, 4
and eax, 1
mov dl, byte [edi]
inc edi
cmp dl, 5
jne 0x418ad8
xor edx, edx
cmp eax, ecx
sete dl
jmp 0x418adf
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
test eax, eax
je 0x417ec9
jmp case.0x417ee9.115
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x6c]
test eax, eax
je 0x418b13
cmp ebx, ecx
jae case.0x417ee9.13
push 0
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
jne case.0x417ee9.115
jmp case.0x417ee9.13
mov eax, dword [esi + 0x1c]
sub ecx, eax
cmp ebx, ecx
ja case.0x417ee9.13
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne case.0x417ee9.13
cmp eax, 1
je case.0x417ee9.115
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x2d]
je case.0x417ee9.115
mov eax, ebx
inc ebx
cmp eax, dword [esi + 0x6c]
jb 0x418925
mov eax, dword [esi + 0x7c]
test eax, eax
je case.0x417ee9.115
cmp ebx, dword [ebp + 8]
jbe case.0x417ee9.115
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jle case.0x417ee9.115
push 0xfffffffffffffff4
pop eax
jmp 0x418a35
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 4
jmp 0x418a68
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 4
je case.0x417ee9.115
jmp 0x418925
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 1
jmp 0x418a68
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 1
jmp 0x418b93
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x418a68
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x34]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x418b93
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
jae 0x418b44
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
je 0x418925
jbe case.0x417ee9.115
cmp eax, 0xc
jbe 0x418c39
cmp eax, 0xd
je 0x418c49
cmp eax, 0x85
je 0x418c39
cmp eax, 0x2027
jbe case.0x417ee9.115
cmp eax, 0x2029
ja case.0x417ee9.115
xor eax, eax
cmp dword [esi + 0x60], eax
jne 0x418a35
jmp 0x418925
cmp ebx, ecx
jae 0x418925
cmp byte [ebx], 0xa
jne 0x418925
inc ebx
jmp 0x418925
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, 0x180e
inc ebx
cmp eax, ecx
ja 0x418ca3
je case.0x417ee9.115
cmp eax, 9
je case.0x417ee9.115
cmp eax, 0x20
je case.0x417ee9.115
cmp eax, 0xa0
je case.0x417ee9.115
cmp eax, 0x1680
jmp 0x418b93
cmp eax, 0x2000
jb 0x418925
cmp eax, 0x200a
jbe case.0x417ee9.115
cmp eax, 0x202f
je case.0x417ee9.115
cmp eax, 0x205f
je case.0x417ee9.115
cmp eax, 0x3000
jmp 0x418b93
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, 0x180e
inc ebx
cmp eax, ecx
ja 0x418d1c
je 0x418925
cmp eax, 9
je 0x418925
cmp eax, 0x20
je 0x418925
cmp eax, 0xa0
je 0x418925
cmp eax, 0x1680
jmp 0x418a68
cmp eax, 0x2000
jb case.0x417ee9.115
cmp eax, 0x200a
jbe 0x418925
cmp eax, 0x202f
je 0x418925
cmp eax, 0x205f
je 0x418925
cmp eax, 0x3000
jmp 0x418a68
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jb 0x418925
cmp eax, 0xd
jbe case.0x417ee9.115
cmp eax, 0x85
je case.0x417ee9.115
cmp eax, 0x2027
jbe 0x418925
cmp eax, 0x2029
jbe case.0x417ee9.115
jmp 0x418925
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jb case.0x417ee9.115
cmp eax, 0xd
jbe 0x418925
cmp eax, 0x85
je 0x418925
cmp eax, 0x2027
jbe case.0x417ee9.115
cmp eax, 0x2029
ja case.0x417ee9.115
jmp 0x418925
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add eax, eax
add edi, 3
mov dword [ebp - 0x10], eax
cmp eax, dword [ebp + 0x10]
jge 0x418e09
mov ecx, dword [esi + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
test ecx, ecx
js 0x418e09
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x418e16
xor edx, edx
cmp dword [esi + 0x48], edx
jne 0x418e16
mov edx, dword [esi + 0x6c]
sub edx, ebx
inc edx
mov al, byte [edi]
mov dword [ebp - 0xc], edx
cmp al, 0x46
jb 0x418efd
cmp al, 0x4b
jbe 0x418e6b
cmp al, 0x4d
ja 0x418efd
movzx edx, byte [edi + 4]
xor ecx, ecx
cmp al, 0x4d
movzx eax, byte [edi + 2]
sete cl
mov dword [ebp - 0x14], ecx
movzx ecx, byte [edi + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 3]
shl eax, 8
or eax, edx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
jne 0x418e63
mov eax, 0x7fffffff
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0xc]
add edi, 5
jmp 0x418e98
movzx eax, al
lea ecx, [eax - 0x46]
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x40538e]
movsx eax, byte [eax + 0x405396]
inc edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
test eax, eax
jne 0x418e98
mov eax, 0x7fffffff
mov dword [ebp - 8], eax
test edx, edx
je 0x417ec9
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp ecx, edx
jl 0x418ed8
push dword [ebp + 0x18]
mov edx, dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, esi
mov ecx, ebx
call fcn.00417e26
test eax, eax
je 0x41a439
add ebx, dword [ebp - 0xc]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jle 0x418eaa
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 8]
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
je 0x41a3a7
mov eax, dword [ebp - 4]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a383
push dword [ebp + 0x18]
mov edx, dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, esi
mov ecx, ebx
call fcn.00417e26
test eax, eax
je 0x41a439
add ebx, dword [ebp - 0xc]
jmp 0x417ec9
lea eax, [edi + 1]
add edi, 0x21
mov dword [ebp - 0xc], eax
mov al, byte [edi]
cmp al, 0x46
jb 0x418f9b
cmp al, 0x4b
jbe 0x418f6f
cmp al, 0x4d
ja 0x418f9b
movzx edx, byte [edi + 4]
xor ecx, ecx
cmp al, 0x4d
movzx eax, byte [edi + 2]
sete cl
mov dword [ebp - 0x14], ecx
movzx ecx, byte [edi + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 3]
shl eax, 8
or eax, edx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
jne 0x418f6a
mov eax, 0x7fffffff
mov dword [ebp - 8], eax
add edi, 5
jmp 0x418fa6
movzx eax, al
lea ecx, [eax - 0x46]
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x40538e]
movsx eax, byte [eax + 0x405396]
inc edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
test eax, eax
jne 0x418fa6
mov eax, 0x7fffffff
jmp 0x418fa3
xor ecx, ecx
inc ecx
mov eax, ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp ecx, edx
jl 0x418fe6
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0xc]
shr eax, 3
mov al, byte [eax + ecx]
inc ebx
test al, dl
je case.0x417ee9.115
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp dword [ebp + 0x14], ecx
jle 0x418fb0
mov eax, dword [ebp - 8]
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
mov dword [ebp + 0x14], ecx
je 0x41a4c1
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a49d
mov eax, dword [esi + 0x6c]
xor ecx, ecx
sub eax, ebx
inc ecx
cmp eax, ecx
jl 0x41a550
mov al, byte [ebx]
inc ebx
cmp byte [edi + 1], al
jne case.0x417ee9.115
jmp 0x41839f
mov eax, dword [esi + 0x6c]
xor ecx, ecx
sub eax, ebx
inc ecx
cmp eax, ecx
jl 0x41a550
movzx edx, byte [ebx]
mov eax, dword [esi + 0x30]
movzx ecx, byte [edi + 1]
mov dl, byte [edx + eax]
inc ebx
cmp byte [ecx + eax], dl
jmp 0x41901e
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov dword [ebp - 4], eax
add edi, 3
jmp 0x4190d3
mov dword [ebp - 0x10], 1
movzx eax, byte [edi + 1]
movzx edx, byte [edi + 2]
and dword [ebp - 4], 0
shl eax, 8
or eax, edx
xor edx, edx
cmp cl, 0x26
sete dl
mov dword [ebp - 0x14], edx
jmp 0x41905c
and dword [ebp - 4], 0
mov dword [ebp - 0x10], 1
inc edi
jmp 0x4190ce
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], eax
jmp 0x419091
and dword [ebp - 4], 0
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
inc edi
jmp 0x4190d3
lea ecx, [eax - 0x1f]
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x4053b5]
movsx eax, byte [eax + 0x4053bd]
inc edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
test eax, eax
jne 0x4190d6
mov eax, 0x7fffffff
mov dword [ebp - 8], eax
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0xc], edx
je 0x4191cb
mov ecx, dword [esi + 0x30]
movzx ecx, byte [ecx + edx]
xor edx, edx
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 4]
inc edx
mov dword [ebp + 0x14], edx
cmp ecx, edx
jl 0x41912b
jmp 0x419103
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx ecx, byte [edx + ecx]
inc ebx
cmp dword [ebp - 0xc], ecx
jne case.0x417ee9.115
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp dword [ebp + 0x14], ecx
jle 0x419100
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
jne 0x41a587
mov dword [ebp - 4], ebx
cmp ecx, eax
jge 0x419180
mov dword [ebp + 0x14], ecx
cmp ebx, dword [esi + 0x6c]
jae 0x419166
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx ecx, byte [edx + ecx]
cmp dword [ebp - 0xc], ecx
jne 0x419180
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jl 0x419147
jmp 0x419180
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x419180
cmp ebx, dword [ebp + 8]
jbe 0x419180
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp dword [ebp - 0x10], 0
jne 0x417ec9
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
dec ebx
test eax, eax
jne 0x41a892
cmp ebx, dword [ebp - 4]
jae 0x41919a
jmp case.0x417ee9.115
mov ecx, dword [ebp - 4]
mov dword [ebp + 0x14], 1
cmp ecx, 1
jl 0x4191fb
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0xc], ecx
jne case.0x417ee9.115
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp dword [ebp + 0x14], ecx
jle 0x4191da
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
mov dword [ebp + 0x14], ecx
jne 0x41a5e7
mov dword [ebp - 4], ebx
cmp ecx, eax
jge 0x419249
cmp ebx, dword [esi + 0x6c]
jae 0x41922f
movzx ecx, byte [ebx]
cmp dword [ebp - 0xc], ecx
jne 0x419249
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jl 0x419217
jmp 0x419249
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x419249
cmp ebx, dword [ebp + 8]
jbe 0x419249
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp dword [ebp - 0x10], 0
jne 0x417ec9
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
dec ebx
test eax, eax
jne 0x41a892
cmp ebx, dword [ebp - 4]
jae 0x419263
jmp case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx ecx, byte [ebx]
inc ebx
test byte [ebp + 0x18], 1
je 0x4192c2
mov eax, dword [esi + 0x30]
movzx edx, byte [edi + 1]
mov cl, byte [eax + ecx]
add edi, 2
cmp byte [edx + eax], cl
jne 0x417ec9
jmp case.0x417ee9.115
movzx eax, byte [edi + 1]
add edi, 2
cmp eax, ecx
jmp 0x4192b7
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov dword [ebp - 4], eax
add edi, 3
jmp 0x41936a
movzx eax, byte [edi + 1]
movzx edx, byte [edi + 2]
and dword [ebp - 4], 0
shl eax, 8
or eax, edx
xor edx, edx
cmp cl, 0x33
sete dl
mov dword [ebp - 0x14], edx
jmp 0x4192dd
and dword [ebp - 4], 0
mov dword [ebp - 0x10], 1
inc edi
jmp 0x419365
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], eax
jmp 0x41930e
and dword [ebp - 4], 0
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
inc edi
jmp 0x41936a
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
and dword [ebp - 4], 0
shl eax, 8
mov dword [ebp - 0x10], 1
or eax, ecx
jmp 0x4192dd
lea ecx, [eax - 0x2c]
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x4053a8]
movsx eax, byte [eax + 0x4053b0]
inc edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
test eax, eax
jne 0x41936d
mov eax, 0x7fffffff
mov dword [ebp - 8], eax
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0xc], edx
je 0x419462
mov ecx, dword [esi + 0x30]
movzx ecx, byte [ecx + edx]
xor edx, edx
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 4]
inc edx
mov dword [ebp + 0x14], edx
cmp ecx, edx
jl 0x4193c2
jmp 0x41939a
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx ecx, byte [edx + ecx]
inc ebx
cmp dword [ebp - 0xc], ecx
je case.0x417ee9.115
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp dword [ebp + 0x14], ecx
jle 0x419397
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
mov dword [ebp + 0x14], ecx
jne 0x41a63d
mov dword [ebp - 4], ebx
cmp ecx, eax
jge 0x419417
cmp ebx, dword [esi + 0x6c]
jae 0x4193fd
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx ecx, byte [edx + ecx]
cmp dword [ebp - 0xc], ecx
je 0x419417
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jl 0x4193de
jmp 0x419417
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x419417
cmp ebx, dword [ebp + 8]
jbe 0x419417
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp dword [ebp - 0x10], 0
jne 0x417ec9
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
dec ebx
cmp ebx, dword [ebp - 4]
jae 0x419431
jmp case.0x417ee9.115
mov ecx, dword [ebp - 4]
mov dword [ebp + 0x14], 1
cmp ecx, 1
jl 0x419492
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0xc], ecx
je case.0x417ee9.115
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp dword [ebp + 0x14], ecx
jle 0x419471
cmp ecx, eax
je 0x417ec9
cmp dword [ebp - 0x14], 0
mov dword [ebp + 0x14], ecx
jne 0x41a69a
mov dword [ebp - 4], ebx
cmp ecx, eax
jge 0x4194e0
cmp ebx, dword [esi + 0x6c]
jae 0x4194c6
movzx ecx, byte [ebx]
cmp dword [ebp - 0xc], ecx
je 0x4194e0
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jl 0x4194ae
jmp 0x4194e0
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x4194e0
cmp ebx, dword [ebp + 8]
jbe 0x4194e0
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp dword [ebp - 0x10], 0
jne 0x417ec9
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
dec ebx
cmp ebx, dword [ebp - 4]
jae 0x4194fa
jmp case.0x417ee9.115
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, ecx
mov dword [ebp - 0x14], 1
mov dword [ebp - 4], eax
add edi, 3
jmp 0x4195da
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
shl ecx, 8
or ecx, edx
mov dword [ebp - 8], ecx
xor ecx, ecx
xor eax, eax
cmp byte [edi], 0x40
mov dword [ebp - 4], eax
sete cl
add edi, 3
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 8]
jmp 0x4195dd
mov dword [ebp - 0x10], 1
xor eax, eax
mov dword [ebp - 4], eax
inc edi
jmp 0x4195d5
xor eax, eax
inc eax
mov dword [ebp - 0x10], eax
jmp 0x41957d
xor ecx, ecx
inc ecx
xor eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
inc edi
jmp 0x4195da
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
shl ecx, 8
xor eax, eax
mov dword [ebp - 0x10], 1
or ecx, edx
jmp 0x419541
lea ecx, [eax - 0x39]
mov eax, ecx
and eax, 1
mov dword [ebp - 0x14], eax
movsx eax, byte [ecx + 0x4053d4]
movsx ecx, byte [ecx + 0x4053dc]
inc edi
mov dword [ebp - 4], eax
mov dword [ebp - 8], ecx
test ecx, ecx
jne 0x4195dd
mov ecx, 0x7fffffff
mov dword [ebp - 8], ecx
movzx edx, byte [edi]
inc edi
mov dword [ebp - 0xc], edx
test eax, eax
jle 0x419953
add edx, 0xfffffffa
cmp edx, 0xf
ja case.0x41a77d.15
jmp dword [edx*4 + 0x41aa3a]
xor edx, edx
inc edx
cmp eax, edx
jl 0x419953
mov dword [ebp + 0x14], edx
jmp 0x419612
xor edx, edx
inc edx
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
jae 0x41a569
cmp dword [esi + 0x18], 0
je 0x41963f
push 0
push dword [esi + 0x18]
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
jne case.0x417ee9.115
mov eax, dword [ebp - 4]
jmp 0x419664
mov edx, dword [esi + 0x1c]
sub ecx, edx
cmp ebx, ecx
ja 0x419664
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne 0x419664
cmp edx, 1
je case.0x417ee9.115
mov cl, byte [ebx + 1]
cmp cl, byte [esi + 0x2d]
je case.0x417ee9.115
mov ecx, dword [ebp - 8]
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x41960f
jmp 0x419953
mov edx, dword [esi + 0x6c]
sub edx, eax
cmp ebx, edx
ja 0x418b44
add ebx, eax
jmp 0x419953
mov dword [ebp + 0x14], 1
cmp eax, 1
jl 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx edx, byte [ebx]
inc ebx
cmp edx, 0xa
je 0x4196d1
jle case.0x417ee9.115
cmp edx, 0xc
jle 0x4196c7
cmp edx, 0xd
je 0x4196de
cmp edx, 0x85
jne case.0x417ee9.115
cmp dword [esi + 0x60], 0
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419699
jmp 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x4196d1
cmp byte [ebx], 0xa
jne 0x4196d1
inc ebx
jmp 0x4196d1
mov dword [ebp + 0x14], 1
cmp eax, 1
jl 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx edx, byte [ebx]
inc ebx
cmp edx, 9
je case.0x417ee9.115
cmp edx, 0x20
je case.0x417ee9.115
cmp edx, 0xa0
je case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x4196fb
jmp 0x419953
mov dword [ebp + 0x14], 1
cmp eax, 1
jl 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx edx, byte [ebx]
inc ebx
cmp edx, 9
je 0x419766
cmp edx, 0x20
je 0x419766
cmp edx, 0xa0
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419743
jmp 0x419953
mov dword [ebp + 0x14], 1
cmp eax, 1
jl 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx edx, byte [ebx]
inc ebx
cmp edx, 0xa
jl 0x4197aa
cmp edx, 0xd
jle case.0x417ee9.115
cmp edx, 0x85
je case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419783
jmp 0x419953
mov dword [ebp + 0x14], 1
cmp eax, 1
jl 0x419953
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx edx, byte [ebx]
inc ebx
cmp edx, 0xa
jl case.0x417ee9.115
cmp edx, 0xd
jle 0x4197ee
cmp edx, 0x85
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x4197c7
jmp 0x419953
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x41980e
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 4
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x41980b
jmp 0x419950
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x41984a
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 4
je case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419847
jmp 0x419950
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x419886
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 1
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419883
jmp 0x419950
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x4198c2
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 1
je case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x4198bf
jmp 0x419950
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x4198f7
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 0x10
jne case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x4198f4
jmp 0x419950
xor edx, edx
inc edx
mov dword [ebp + 0x14], edx
cmp eax, edx
jl 0x419953
jmp 0x41992c
xor edx, edx
inc edx
cmp ebx, dword [esi + 0x6c]
jae 0x41a569
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x34]
mov cl, byte [ecx + edx]
inc ebx
and cl, 0x10
je case.0x417ee9.115
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], eax
jle 0x419929
mov ecx, dword [ebp - 8]
cmp eax, ecx
je 0x417ec9
cmp dword [ebp - 0x14], 0
jne 0x41a6f7
mov edx, dword [ebp - 0xc]
add edx, 0xfffffffa
mov dword [ebp - 4], ebx
cmp edx, 0xf
ja case.0x41a77d.15
jmp dword [edx*4 + 0x41aa7a]
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
mov eax, dword [esi + 0x6c]
cmp ebx, eax
jae 0x4199e3
cmp dword [esi + 0x18], 0
je 0x4199ac
push 0
push dword [esi + 0x18]
mov ecx, eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
jne 0x4199fd
mov ecx, dword [ebp - 8]
jmp 0x4199c9
mov edx, dword [esi + 0x1c]
sub eax, edx
cmp ebx, eax
ja 0x4199c9
mov al, byte [ebx]
cmp al, byte [esi + 0x2c]
jne 0x4199c9
cmp edx, 1
je 0x4199fd
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x2d]
je 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419985
jmp 0x4199fd
sub ecx, eax
mov eax, dword [esi + 0x6c]
mov edx, eax
sub edx, ebx
cmp ecx, edx
jbe 0x419a48
mov ebx, eax
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x4199fd
cmp ebx, dword [ebp + 8]
jbe 0x4199fd
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp dword [ebp - 0x10], 0
jne 0x417ec9
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
dec ebx
test eax, eax
jne 0x41a892
cmp ebx, dword [ebp - 4]
jae 0x419a17
jmp case.0x417ee9.115
add ebx, ecx
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
mov eax, dword [esi + 0x6c]
cmp ebx, eax
jae 0x4199e3
movzx edx, byte [ebx]
cmp edx, 0xd
jne 0x419a6e
inc ebx
cmp ebx, eax
jae 0x4199fd
cmp byte [ebx], 0xa
jne 0x419a90
jmp 0x419a8f
cmp edx, 0xa
je 0x419a8f
cmp dword [esi + 0x60], 0
jne 0x4199fd
cmp edx, 0xb
je 0x419a8f
cmp edx, 0xc
je 0x419a8f
cmp edx, 0x85
jne 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419a56
jmp 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx edx, byte [ebx]
cmp edx, 9
je 0x4199fd
cmp edx, 0x20
je 0x4199fd
cmp edx, 0xa0
je 0x4199fd
inc ebx
inc eax
cmp eax, ecx
jl 0x419a9d
jmp 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx edx, byte [ebx]
cmp edx, 9
je 0x419af4
cmp edx, 0x20
je 0x419af4
cmp edx, 0xa0
jne 0x4199fd
inc ebx
inc eax
cmp eax, ecx
jl 0x419ad2
jmp 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx edx, byte [ebx]
cmp edx, 0xa
je 0x4199fd
cmp edx, 0xb
je 0x4199fd
cmp edx, 0xc
je 0x4199fd
cmp edx, 0xd
je 0x4199fd
cmp edx, 0x85
je 0x4199fd
inc ebx
inc eax
cmp eax, ecx
jl 0x419aff
jmp 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx edx, byte [ebx]
cmp edx, 0xa
je 0x419b72
cmp edx, 0xb
je 0x419b72
cmp edx, 0xc
je 0x419b72
cmp edx, 0xd
je 0x419b72
cmp edx, 0x85
jne 0x4199fd
inc ebx
inc eax
cmp eax, ecx
jl 0x419b46
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 4
jne 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419b88
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 4
je 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419bba
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 1
jne 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419bec
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 1
je 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419c1e
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 0x10
jne 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419c50
jmp 0x4199fd
mov dword [ebp + 0x14], eax
cmp eax, ecx
jge 0x4199fd
cmp ebx, dword [esi + 0x6c]
jae 0x4199e3
movzx eax, byte [ebx]
mov edx, dword [esi + 0x34]
test byte [eax + edx], 0x10
je 0x4199fd
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jl 0x419c82
jmp 0x4199fd
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 5]
shl eax, 8
or eax, ecx
lea edi, [edi + eax + 3]
jmp 0x419ccb
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x54
je 0x419cbc
jmp 0x418168
movzx ecx, byte [edi + 3]
movzx edx, byte [edi + 4]
shl ecx, 8
or ecx, edx
mov dword [ebp - 0xc], ecx
add ecx, ecx
cmp ecx, dword [esi + 0x14]
jl 0x41a02d
cmp eax, 0x61
jl 0x419cfe
mov dword [ebp + 0x20], 2
jmp 0x419d4d
and dword [ebp + 0x20], 0
jmp 0x419d4d
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x419d3e
cmp eax, 0xfffffc1e
jne 0x41a892
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
cmp byte [eax + edi], 0x54
je 0x419d04
cmp dword [ebp + 0x20], 0
jne 0x41a10c
movzx eax, byte [edi]
movzx eax, byte [eax + 0x407188]
add edi, eax
jmp 0x419dce
mov edx, dword [ebp + 0x14]
push 2
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov edi, dword [ebp + 0x20]
jmp 0x419dca
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x14]
inc ecx
push ecx
push eax
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp - 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
add edi, 3
and dword [ebp + 0x20], 0
mov eax, dword [esi]
cmp eax, dword [esi + 4]
inc dword [esi]
jb 0x417ea2
push 0xfffffffffffffff8
jmp 0x41a891
push 0xffffffffffffffeb
jmp 0x41a891
mov ecx, dword [ebp + 0x24]
movzx edx, byte [edi + 1]
inc ecx
push ecx
push dword [ebp + 0x20]
lea eax, [edi + 2]
push dword [ebp + 0x1c]
mov dword [ebp + 0xc], eax
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push eax
movzx eax, byte [edi]
movzx eax, byte [eax + 0x407188]
push dword [ebp + 8]
add eax, edi
add edx, eax
call fcn.00417e8a
mov edi, eax
cmp edi, 0xfffffc1d
jne 0x419e45
push dword [esi + 0x70]
push dword [ebp + 0xc]
call dword [sym.imp.msvcrt.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x419e45
mov dword [esi + 0x70], ebx
lea eax, [edi - 1]
jmp 0x41a892
cmp dword [esi + 0x9c], 0
jne 0x419e57
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x9c], eax
mov eax, edi
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov eax, 0xfffffc1a
jmp 0x418a35
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov eax, 0xfffffc1b
jmp 0x418a35
mov eax, dword [ebp + 0x24]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx eax, byte [eax + 0x407188]
push dword [ebp + 0x18]
add eax, edi
push esi
push dword [ebp + 0x10]
add edx, eax
push dword [ebp + 0xc]
mov ecx, ebx
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov eax, 0xfffffc1b
add edi, 2
mov dword [esi + 0x9c], edi
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov dword [esi + 0x70], ebx
mov eax, 0xfffffc1c
jmp 0x418a35
mov eax, dword [ebp + 0x24]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx eax, byte [eax + 0x407188]
push dword [ebp + 0x18]
add eax, edi
push esi
push dword [ebp + 0x10]
add edx, eax
push dword [ebp + 0xc]
mov ecx, ebx
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
add edi, 2
mov dword [esi + 0x70], edi
mov eax, 0xfffffc1d
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov eax, 0xfffffc1e
jmp 0x418a35
mov eax, dword [ebp + 0x24]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx eax, byte [eax + 0x407188]
push dword [ebp + 0x18]
add eax, edi
push esi
push dword [ebp + 0x10]
add edx, eax
push dword [ebp + 0xc]
mov ecx, ebx
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
mov eax, 0xfffffc1e
jmp 0x419f16
mov eax, dword [esi + 0xc]
shl ecx, 2
mov edx, dword [ecx + eax]
mov dword [ebp + 0x14], ecx
mov ecx, dword [ecx + eax + 4]
mov dword [ebp - 0x14], ecx
mov ecx, dword [esi + 0x10]
sub ecx, dword [ebp - 0xc]
mov dword [ebp - 0x10], edx
lea eax, [eax + ecx*4]
mov ecx, dword [eax]
mov dword [ebp - 8], ecx
mov ecx, dword [esi + 0x84]
mov dword [ebp - 0x18], ecx
mov ecx, ebx
sub ecx, dword [esi + 0x68]
cmp dword [ebp - 4], 0x62
mov dword [eax], ecx
jne 0x41a070
mov dword [ebp + 0x20], 2
jmp 0x41a074
and dword [ebp + 0x20], 0
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
movzx eax, byte [edi]
push dword [ebp + 0x20]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x1c]
add edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a0b3
cmp eax, 0xfffffc1e
jne 0x41a892
mov ecx, dword [ebp - 0x18]
mov dword [esi + 0x84], ecx
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
shl ecx, 8
or ecx, edx
add edi, ecx
cmp byte [edi], 0x54
je 0x41a07b
mov edx, dword [esi + 0xc]
mov ecx, dword [ebp + 0x14]
mov edi, dword [ebp - 0x10]
mov dword [ecx + edx], edi
mov edx, dword [esi + 0xc]
mov edi, dword [ebp - 0x14]
mov dword [ecx + edx + 4], edi
mov ecx, dword [esi + 0x10]
sub ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0xc]
mov edi, dword [ebp - 8]
mov dword [edx + ecx*4], edi
cmp eax, 0xfffffc1e
je 0x41a105
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x9c], eax
xor eax, eax
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx edx, byte [eax + 0x407188]
push dword [ebp + 0x18]
add edx, edi
push esi
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
jmp 0x418a35
cmp ebx, dword [ebp + 8]
jne 0x41a161
cmp dword [esi + 0x54], ecx
jne 0x41a0fc
cmp dword [esi + 0x58], ecx
je 0x41a161
mov eax, dword [esi + 0x88]
add eax, dword [esi + 0x68]
cmp dword [ebp + 8], eax
je 0x41a0fc
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x80], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x70], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x9c], eax
mov eax, dword [ebp - 4]
neg eax
sbb eax, eax
and eax, 0xfffffc18
mov dword [esi + 0x74], ebx
inc eax
jmp 0x41a892
xor eax, eax
inc eax
jmp 0x41a892
movzx eax, byte [edi + 1]
movzx edx, byte [edi + 2]
mov ecx, dword [esi + 0x64]
shl eax, 8
or eax, edx
add eax, ecx
mov dword [ebp + 0x20], eax
cmp eax, ecx
jne 0x41a1b5
and dword [ebp - 0x2c], 0
jmp 0x41a1c5
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x2c], ecx
mov eax, dword [esi + 0x94]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x10]
add edi, 3
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], eax
cmp eax, 0x1e
jg 0x41a1f3
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x24], ecx
jmp 0x41a20f
mov ecx, eax
shl ecx, 2
call dword [str.TB_B]
mov dword [ebp - 0x24], eax
test eax, eax
jne 0x41a20c
push 0xfffffffffffffffa
jmp 0x41a891
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push dword [esi + 0xc]
push dword [ebp - 0x24]
call dword [sym.imp.msvcrt.dll_memcpy]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x24]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x20]
mov al, byte [eax]
add esp, 0xc
cmp al, 0x61
sbb edi, edi
and edi, 0xfffffffe
add edi, 2
inc ecx
mov dword [ebp + 0x24], ecx
push dword [ebp + 0x24]
movzx eax, al
movzx edx, byte [eax + 0x407188]
add edx, dword [ebp + 0x20]
push edi
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
mov dword [ebp + 0x14], eax
cmp eax, 1
je 0x41a306
cmp eax, 0xfffffc19
je 0x41a306
test eax, eax
je 0x41a288
cmp eax, 0xfffffc1e
jne 0x41a2eb
lea eax, [ebp - 0x30]
mov dword [esi + 0x94], eax
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push dword [ebp - 0x24]
push dword [esi + 0xc]
call dword [sym.imp.msvcrt.dll_memcpy]
mov eax, dword [ebp + 0x20]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [ebp + 0x20], eax
mov al, byte [eax]
add esp, 0xc
cmp al, 0x54
je 0x41a23e
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
mov dword [esi + 0x94], eax
lea eax, [ebp - 0x110]
cmp ecx, eax
je case.0x417ee9.115
call dword [0x43e7ec]
jmp case.0x417ee9.115
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x110]
cmp ecx, eax
je 0x41a2fe
call dword [0x43e7ec]
mov eax, dword [ebp + 0x14]
jmp 0x41a892
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
mov dword [esi + 0x94], eax
lea eax, [ebp - 0x110]
cmp ecx, eax
je 0x41a322
call dword [0x43e7ec]
xor eax, eax
inc eax
jmp 0x418a35
mov eax, dword [ebp + 0x24]
mov edx, dword [ebp + 0x14]
inc eax
push eax
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp - 0x18]
jmp 0x418184
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x80], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x74], ebx
mov dword [esi + 0x70], eax
jmp 0x41a322
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
push dword [ebp + 0x18]
mov edx, dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, esi
mov ecx, ebx
call fcn.00417e26
test eax, eax
je 0x41a439
add ebx, dword [ebp - 0xc]
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a354
jmp 0x41a892
mov dword [ebp - 4], ebx
mov dword [ebp + 0x14], ecx
cmp ecx, eax
jge 0x41a3ff
push dword [ebp + 0x18]
mov edx, dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, esi
mov ecx, ebx
call fcn.00417e26
test eax, eax
je 0x41a3d7
add ebx, dword [ebp - 0xc]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 8]
jl 0x41a3b1
jmp 0x41a3f6
mov ecx, dword [esi + 0x7c]
test ecx, ecx
je 0x41a3f6
cmp ebx, dword [esi + 0x6c]
jb 0x41a3f6
cmp ebx, dword [ebp + 8]
jbe 0x41a3f6
xor eax, eax
inc eax
mov dword [esi + 0x5c], eax
cmp ecx, eax
jg 0x418b66
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
sub ebx, dword [ebp - 0xc]
cmp ebx, dword [ebp - 4]
jae 0x41a406
jmp case.0x417ee9.115
mov ecx, dword [esi + 0x7c]
test ecx, ecx
je case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jb case.0x417ee9.115
cmp ebx, dword [ebp + 8]
jbe case.0x417ee9.115
xor eax, eax
inc eax
mov dword [esi + 0x5c], eax
cmp ecx, eax
jmp 0x418b60
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0xc]
shr eax, 3
mov al, byte [eax + ecx]
inc ebx
test al, dl
je case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a463
jmp 0x41a892
mov dword [ebp - 4], ebx
cmp ecx, eax
jge 0x41a518
cmp ebx, dword [esi + 0x6c]
jae 0x41a4f5
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0xc]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x41a50f
inc ebx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 8]
jl 0x41a4c8
jmp 0x41a50f
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x41a50f
cmp ebx, dword [ebp + 8]
jbe 0x41a50f
xor ecx, ecx
inc ecx
mov dword [esi + 0x5c], ecx
cmp eax, ecx
jg 0x418b66
cmp ebx, dword [ebp - 4]
jb case.0x417ee9.115
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push dword [ebp + 0x24]
mov edx, edi
push 0
push dword [ebp + 0x1c]
mov ecx, ebx
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
jne 0x41a892
dec ebx
cmp ebx, dword [ebp - 4]
jae 0x41a51f
jmp case.0x417ee9.115
mov eax, dword [esi + 0x7c]
test eax, eax
je case.0x417ee9.115
cmp ebx, dword [ebp + 8]
jbe case.0x417ee9.115
jmp 0x418b5b
mov eax, dword [esi + 0x7c]
test eax, eax
je case.0x417ee9.115
cmp ebx, dword [ebp + 8]
jbe case.0x417ee9.115
mov dword [esi + 0x5c], edx
cmp eax, edx
jmp 0x418b60
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a5c3
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0xc], eax
jne case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a594
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a619
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0xc], eax
jne case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a5f1
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a676
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x30]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0xc], eax
je case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a647
jmp 0x41a892
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a6cc
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
cmp ebx, dword [esi + 0x6c]
jae 0x418b44
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0xc], eax
je case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a6a4
jmp 0x41a892
push 0xfffffffffffffff2
jmp 0x41a891
mov eax, dword [ebp - 4]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x24], eax
push eax
jmp 0x41a86a
mov eax, dword [ebp - 8]
cmp dword [ebp + 0x14], eax
jge case.0x417ee9.115
mov ecx, dword [esi + 0x6c]
cmp ebx, ecx
jae 0x418b44
cmp dword [ebp - 0xc], 0xc
jne 0x41a76a
mov eax, dword [esi + 0x18]
test eax, eax
je 0x41a745
push 0
push eax
lea edx, [esi + 0x1c]
mov eax, ebx
call fcn.00409350
test eax, eax
jne case.0x417ee9.115
jmp 0x41a76a
mov eax, dword [esi + 0x1c]
sub ecx, eax
cmp ebx, ecx
ja 0x41a76a
mov cl, byte [ebx]
cmp cl, byte [esi + 0x2c]
jne 0x41a76a
cmp eax, 1
je case.0x417ee9.115
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x2d]
je case.0x417ee9.115
mov ecx, dword [ebp - 0xc]
movzx eax, byte [ebx]
add ecx, 0xfffffffa
inc ebx
cmp ecx, 0xf
ja case.0x41a77d.15
jmp dword [ecx*4 + 0x41aaba]
cmp eax, 0xa
je case.0x41a77d.12
jbe case.0x417ee9.115
cmp eax, 0xc
jbe 0x41a7a8
cmp eax, 0xd
je 0x41a7b8
cmp eax, 0x85
jne case.0x417ee9.115
xor eax, eax
cmp dword [esi + 0x60], eax
jne 0x418a35
jmp case.0x41a77d.12
cmp ebx, dword [esi + 0x6c]
jae case.0x41a77d.12
cmp byte [ebx], 0xa
jne case.0x41a77d.12
inc ebx
jmp case.0x41a77d.12
cmp eax, 9
je case.0x417ee9.115
cmp eax, 0x20
je case.0x417ee9.115
cmp eax, 0xa0
jmp 0x41a85e
cmp eax, 9
je case.0x41a77d.12
cmp eax, 0x20
je case.0x41a77d.12
cmp eax, 0xa0
jne case.0x417ee9.115
jmp case.0x41a77d.12
cmp eax, 0xa
jb case.0x41a77d.12
cmp eax, 0xd
jbe case.0x417ee9.115
cmp eax, 0x85
jmp 0x41a85e
cmp eax, 0xa
jb case.0x417ee9.115
cmp eax, 0xd
jbe case.0x41a77d.12
cmp eax, 0x85
jmp 0x41a7f8
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 4
jmp 0x41a7f8
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 4
jmp 0x41a85e
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 1
jmp 0x41a7f8
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 1
jmp 0x41a85e
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 0x10
jmp 0x41a7f8
mov ecx, dword [esi + 0x34]
test byte [eax + ecx], 0x10
je case.0x417ee9.115
inc dword [ebp + 0x14]
push dword [ebp + 0x24]
push 0
push dword [ebp + 0x1c]
mov edx, edi
push dword [ebp + 0x18]
mov ecx, ebx
push esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00417e8a
test eax, eax
je 0x41a70a
jmp 0x41a892
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret 0x20