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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe4
push ebx
push esi
mov esi, dword [ebp + 0x14]
mov eax, dword [esi]
cmp eax, dword [esi + 4]
push edi
jae 0x4477b8
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [ebp + 0x24]
inc dword [esi]
cmp eax, dword [esi + 8]
jae 0x4477c1
test byte [ebp + 0x20], 2
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x1c], eax
je 0x446367
test byte [ebp + 0x20], 4
je 0x446359
mov ecx, dword [esi + 0x70]
cmp ecx, 0x3e8
jge 0x4477c8
mov eax, dword [esi + 0x6c]
lea eax, [eax + ecx*8]
inc ecx
mov dword [esi + 0x70], ecx
jmp 0x44635c
lea eax, [ebp - 0x6c]
mov ecx, dword [ebp + 0x1c]
mov dword [eax + 4], ebx
mov dword [eax], ecx
mov dword [ebp + 0x1c], eax
movzx ecx, byte [edi]
xor edx, edx
cmp dword [esi + 0x44], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov dword [ebp + 0x14], ecx
je 0x44638b
cmp ebx, dword [esi + 0x54]
jb 0x44638b
cmp ebx, dword [esi + 0x58]
jbe 0x44638b
mov dword [esi + 0x48], 1
cmp ecx, 0x62
ja case.0x44639b.13
movzx eax, byte [ecx + 0x447ee2]
jmp dword [eax*4 + 0x447dfa]
lea eax, [edi + 3]
mov cl, byte [eax]
cmp cl, 0x5f
jne 0x4463d6
mov eax, dword [esi + 0x74]
xor ecx, ecx
cmp eax, edx
mov ch, byte [edi + 4]
mov cl, byte [edi + 5]
je 0x4463c8
cmp ecx, 0xffff
je 0x4463f2
cmp ecx, dword [eax + 4]
je 0x4463f2
xor ecx, ecx
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
jmp 0x446442
cmp cl, 0x5e
jne 0x4463fa
xor eax, eax
mov ah, byte [edi + 4]
mov al, byte [edi + 5]
add eax, eax
cmp eax, dword [ebp + 0x10]
jge 0x4463c8
mov ecx, dword [esi + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x4463c8
xor ecx, ecx
push 3
inc ecx
pop eax
jmp 0x4463d2
cmp cl, 0x60
jne 0x44640b
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
jmp 0x446446
mov ecx, dword [ebp + 0x24]
inc ecx
push ecx
push 1
push 0
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
cmp eax, 1
je 0x4476af
test eax, eax
jne 0x447df2
mov ah, byte [edi + 1]
xor ecx, ecx
mov al, byte [edi + 2]
add edi, eax
xor edx, edx
cmp ecx, edx
jne 0x44644f
cmp byte [edi], 0x4e
jne 0x446560
add edi, 3
cmp dword [ebp + 0x14], 0x5d
jne 0x447750
push 2
pop eax
jmp 0x447752
mov edi, dword [esi + 0x74]
cmp edi, edx
je 0x44788b
cmp dword [edi + 4], edx
jne 0x44788b
mov eax, dword [edi]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0x14]
shl eax, 2
push eax
push dword [edi + 0x10]
push dword [esi + 0xc]
call fcn.0044a310
mov eax, dword [edi + 0xc]
mov dword [esi + 0x58], eax
mov eax, dword [ebp - 0x1c]
mov edi, dword [edi + 8]
add esp, 0xc
mov dword [ebp + 0x18], eax
jmp 0x446367
movzx eax, byte [edi + 1]
mov dword [ebp + 0x18], eax
inc edi
inc edi
jmp 0x446367
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push 0
push dword [ebp + 0x18]
lea eax, [edi + 3]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
cmp eax, 1
je 0x4464eb
test eax, eax
jne 0x447df2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x44639b.82
cmp byte [edi], 0x4f
je 0x447884
test byte [ebp + 0x20], 1
jne 0x44789e
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x4464fe
mov eax, dword [esi + 0x60]
add edi, 3
mov dword [ebp + 0x10], eax
jmp 0x446367
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push 0
push dword [ebp + 0x18]
lea eax, [edi + 3]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
cmp eax, 1
je 0x447884
test eax, eax
jne 0x447df2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x44639b.83
test byte [ebp + 0x20], 1
jne 0x44789e
add edi, 3
jmp 0x446367
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
sub ebx, eax
cmp ebx, dword [esi + 0x50]
jb 0x447884
jmp 0x446560
cmp dword [0x4663c0], edx
je 0x4465fc
movzx eax, byte [edi + 1]
mov ecx, dword [esi + 0x54]
mov dword [ebp - 0x60], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x5c], eax
mov eax, dword [esi + 0x50]
sub ecx, eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], ecx
mov ecx, dword [esi + 0x58]
sub ecx, eax
mov dword [ebp - 0x50], ecx
mov ecx, ebx
sub ecx, eax
xor eax, eax
mov ah, byte [edi + 2]
mov dword [ebp - 0x64], 1
mov dword [ebp - 0x4c], ecx
mov al, byte [edi + 3]
mov dword [ebp - 0x3c], eax
xor eax, eax
mov ah, byte [edi + 4]
mov al, byte [edi + 5]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x48], eax
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x44], eax
mov eax, dword [esi + 0x78]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x64]
push eax
call dword [0x4663c0]
test eax, eax
pop ecx
jg 0x447884
jl 0x447df2
add edi, 6
jmp 0x446367
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 eax, [edi + 3]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
cmp eax, 1
je 0x446642
test eax, eax
jne 0x447df2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x44660a
mov al, byte [edi]
cmp al, 0x57
je 0x446650
cmp al, 0x4e
jne 0x447884
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x446650
cmp byte [edi], 0x4f
mov eax, dword [esi + 0x60]
mov ebx, dword [esi + 0x5c]
mov dword [ebp + 0x10], eax
je 0x446560
cmp ebx, dword [ebp - 0x10]
je 0x446560
lea eax, [edi + 3]
cmp byte [eax], 0x13
mov dword [ebp - 0x14], eax
jne 0x446694
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], 0x51
push eax
jne 0x44775a
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp - 0x14]
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
mov edi, dword [ebp + 0x14]
jmp 0x4477a6
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x44639b.78
jmp 0x446367
mov eax, dword [ebp + 0x24]
inc edi
inc eax
push eax
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x446702
jmp 0x446560
inc edi
mov eax, edi
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x4e
je 0x446719
mov ecx, dword [ebp + 0x24]
inc ecx
push ecx
push 0
push dword [ebp + 0x1c]
add eax, 3
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
jmp 0x446367
xor ecx, ecx
mov ch, byte [edi + 1]
mov eax, edi
mov cl, byte [edi + 2]
sub eax, ecx
mov cl, byte [eax]
cmp cl, 0x5b
mov dword [ebp + 0x14], eax
jb 0x44677c
mov edx, dword [ebp + 0x1c]
mov edx, dword [edx + 4]
mov dword [ebp - 0x10], edx
mov edx, dword [ebp + 0x1c]
mov edx, dword [edx]
mov dword [ebp + 0x1c], edx
jmp 0x446780
and dword [ebp - 0x10], 0
cmp cl, 0x52
je 0x447895
cmp cl, 0x53
je 0x447895
cmp cl, 0x54
je 0x447895
cmp cl, 0x55
je 0x447895
cmp cl, 0x57
je 0x447895
cmp cl, 0x59
je 0x4467bb
cmp cl, 0x5c
jne 0x446848
xor edx, edx
mov dh, byte [eax + 3]
mov dl, byte [eax + 4]
lea ecx, [edx + edx]
cmp ecx, dword [esi + 0x14]
mov dword [ebp - 0x18], edx
mov dword [esi + 0x64], edx
jl 0x4467da
mov dword [esi + 0x2c], 1
jmp 0x44680c
mov edx, dword [esi + 0x10]
sub edx, dword [ebp - 0x18]
mov eax, dword [esi + 0xc]
mov edx, dword [eax + edx*4]
shl ecx, 2
mov dword [eax + ecx], edx
mov edx, dword [esi + 0xc]
mov eax, ebx
sub eax, dword [esi + 0x50]
mov dword [ecx + edx + 4], eax
mov edx, dword [ebp - 0x18]
lea eax, [edx + edx]
cmp dword [ebp + 0x10], eax
jg 0x446809
add eax, 2
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x14]
mov ecx, dword [esi + 0x74]
test ecx, ecx
je 0x446848
cmp dword [ecx + 4], edx
jne 0x446848
mov edi, ecx
mov eax, dword [edi]
mov dword [esi + 0x74], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x58], eax
mov eax, dword [edi + 0x14]
shl eax, 2
push eax
push dword [edi + 0x10]
push dword [esi + 0xc]
call fcn.00449a60
mov eax, dword [ebp - 0x1c]
mov edi, dword [edi + 8]
add esp, 0xc
mov dword [ebp + 0x18], eax
jmp 0x446367
cmp byte [edi], 0x4f
mov ecx, dword [ebp - 0x1c]
mov dword [ebp + 0x18], ecx
je 0x446560
cmp ebx, dword [ebp - 0x10]
je 0x446560
cmp byte [eax], 0x5b
sbb eax, eax
and eax, 0xfffffffe
inc eax
inc eax
cmp byte [edi], 0x51
mov dword [ebp + 0x20], eax
jne 0x44777f
mov eax, dword [ebp + 0x24]
inc eax
push eax
push 0
push dword [ebp + 0x1c]
add edi, 3
push ecx
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
mov edi, dword [ebp + 0x14]
jmp 0x44774a
cmp dword [esi + 0x30], edx
je 0x4468b0
cmp ebx, dword [esi + 0x50]
je 0x447884
test byte [ebp + 0x18], 2
je case.0x44639b.1
mov ecx, dword [esi + 0x50]
cmp ebx, ecx
je 0x44691a
cmp ebx, dword [esi + 0x54]
je 0x447884
cmp dword [esi + 0x18], edx
je 0x4468ed
cmp ebx, ecx
jbe 0x447884
push 0
lea eax, [esi + 0x1c]
push eax
push ecx
push ebx
call fcn.0044873c
add esp, 0x10
test eax, eax
je 0x447884
jmp 0x44691a
mov eax, dword [esi + 0x1c]
add ecx, eax
cmp ebx, ecx
jb 0x447884
mov ecx, ebx
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [esi + 0x20]
jne 0x447884
cmp eax, 1
je 0x44691a
mov al, byte [ecx + 1]
cmp al, byte [esi + 0x21]
jne 0x447884
inc edi
jmp 0x446367
cmp ebx, dword [esi + 0x50]
jmp 0x446914
mov eax, dword [esi + 0x68]
add eax, dword [esi + 0x50]
cmp ebx, eax
jmp 0x446914
test byte [ebp + 0x18], 2
je 0x446977
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x446972
cmp dword [esi + 0x18], edx
je 0x446950
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
jmp 0x4468e0
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x447884
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x447884
cmp ecx, 1
je 0x44691a
mov al, byte [ebx + 1]
jmp 0x446911
cmp dword [esi + 0x34], edx
jmp 0x446914
cmp dword [esi + 0x34], edx
jne 0x447884
cmp dword [esi + 0x3c], edx
jne case.0x44639b.18
mov eax, dword [esi + 0x54]
cmp ebx, eax
je 0x44691a
cmp dword [esi + 0x18], edx
je 0x4469b3
cmp ebx, eax
jae 0x447884
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
add esp, 0x10
test eax, eax
je 0x447884
jmp 0x4469dc
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x447884
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x447884
cmp ecx, 1
je 0x4469dc
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
jne 0x447884
mov eax, dword [esi + 0x54]
sub eax, dword [esi + 0x1c]
jmp 0x44692b
cmp ebx, dword [esi + 0x54]
jb 0x447884
jmp 0x44691a
cmp ebx, dword [esi + 0x50]
je 0x446a0c
movzx eax, byte [ebx - 1]
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
je 0x446a0c
xor ecx, ecx
inc ecx
jmp 0x446a0e
xor ecx, ecx
cmp ebx, dword [esi + 0x54]
jae 0x446a26
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
je 0x446a24
xor eax, eax
inc eax
jmp 0x446a28
xor edx, edx
xor eax, eax
mov dl, byte [edi]
inc edi
cmp dl, 4
jne 0x446a39
xor edx, edx
cmp eax, ecx
sete dl
jmp 0x446a40
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
test eax, eax
je 0x446367
jmp 0x447884
test byte [ebp + 0x18], 4
jne case.0x44639b.12
cmp dword [esi + 0x18], edx
je 0x446a7b
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae case.0x44639b.12
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
add esp, 0x10
test eax, eax
jne 0x447884
jmp case.0x44639b.12
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x54]
sub ecx, eax
cmp ebx, ecx
ja case.0x44639b.12
mov cl, byte [ebx]
cmp cl, byte [esi + 0x20]
jne case.0x44639b.12
cmp eax, 1
je 0x447884
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x447884
mov eax, ebx
inc ebx
cmp eax, dword [esi + 0x54]
jae 0x447884
jmp 0x44691a
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 4
jmp 0x446914
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 4
jmp 0x4468e5
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 1
jmp 0x446914
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 1
jmp 0x4468e5
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x446914
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x4468e5
mov ecx, dword [esi + 0x54]
cmp ebx, ecx
jae 0x447884
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jb 0x447884
cmp eax, 0xc
jbe 0x44691a
cmp eax, 0xd
je 0x446b96
cmp eax, 0x85
je 0x44691a
cmp eax, 0x2027
jbe 0x447884
cmp eax, 0x2029
ja 0x447884
jmp 0x44691a
cmp ebx, ecx
jae 0x44691a
cmp byte [ebx], 0xa
jne 0x44691a
inc ebx
jmp 0x44691a
xor eax, eax
mov ah, byte [edi + 1]
add edi, 3
mov al, byte [edi - 1]
add eax, eax
cmp eax, dword [ebp + 0x10]
mov dword [ebp - 0x14], eax
jge 0x446bd5
mov ecx, dword [esi + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
cmp ecx, edx
jl 0x446bd5
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x446bdb
mov edx, dword [esi + 0x54]
sub edx, ebx
inc edx
mov al, byte [edi]
cmp al, 0x40
mov dword [ebp - 0x18], edx
jb 0x446cb6
cmp al, 0x45
jbe 0x446c24
cmp al, 0x47
ja 0x446cb6
xor ecx, ecx
cmp al, 0x47
sete cl
xor eax, eax
mov ah, byte [edi + 3]
mov dword [ebp - 0xc], ecx
xor ecx, ecx
mov ch, byte [edi + 1]
mov al, byte [edi + 4]
mov cl, byte [edi + 2]
test eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], ecx
jne 0x446c1f
mov dword [ebp - 4], connect
add edi, 5
jmp 0x446c52
movzx eax, al
sub eax, 0x40
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x4592c4]
movsx eax, byte [eax + 0x4592cc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x446c52
mov dword [ebp - 4], connect
test edx, edx
je 0x446367
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x446c90
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.004462a0
test eax, eax
pop ecx
pop ecx
je 0x447884
add ebx, dword [ebp - 0x18]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 0x10]
jle 0x446c64
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
je 0x447a38
mov eax, dword [ebp - 0x10]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push eax
jmp 0x447a19
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.004462a0
test eax, eax
pop ecx
pop ecx
je 0x447884
add ebx, dword [ebp - 0x18]
jmp 0x446367
lea eax, [edi + 1]
add edi, 0x21
mov dword [ebp - 0x14], eax
mov al, byte [edi]
cmp al, 0x40
jb 0x446d50
cmp al, 0x45
jbe 0x446d20
cmp al, 0x47
ja 0x446d50
xor ecx, ecx
cmp al, 0x47
sete cl
xor eax, eax
mov ah, byte [edi + 3]
mov dword [ebp - 0xc], ecx
xor ecx, ecx
mov ch, byte [edi + 1]
mov al, byte [edi + 4]
mov cl, byte [edi + 2]
test eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], ecx
jne 0x446d1b
mov dword [ebp - 4], connect
add edi, 5
jmp 0x446d59
movzx eax, al
sub eax, 0x40
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x4592c4]
movsx eax, byte [eax + 0x4592cc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x446d59
mov dword [ebp - 4], connect
jmp 0x446d59
xor ecx, ecx
inc ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 0x10], ecx
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x446d96
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x14]
shr eax, 3
mov al, byte [eax + ecx]
inc ebx
test al, dl
je 0x447884
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 0x10]
cmp dword [ebp + 0x14], ecx
jle 0x446d63
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
mov dword [ebp + 0x14], ecx
je 0x447aff
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push eax
jmp 0x447ae0
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp eax, 1
jl 0x447884
mov al, byte [ebx]
inc ebx
cmp byte [edi + 1], al
jne 0x447884
jmp 0x4464ad
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp eax, 1
jl 0x447884
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx ecx, byte [edi + 1]
mov dl, byte [edx + eax]
inc ebx
cmp byte [ecx + eax], dl
jmp 0x446dcd
xor ecx, ecx
mov ch, byte [edi + 1]
mov cl, byte [edi + 2]
mov dword [ebp - 4], ecx
add edi, 3
jmp 0x446e77
mov dword [ebp - 8], 1
xor eax, eax
mov ah, byte [edi + 1]
xor ecx, ecx
mov al, byte [edi + 2]
mov dword [ebp - 4], eax
xor eax, eax
cmp byte [edi], 0x20
sete al
mov dword [ebp - 0xc], eax
jmp 0x446e04
mov dword [ebp - 8], 1
xor ecx, ecx
inc edi
jmp 0x446e70
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x446e33
xor eax, eax
inc eax
xor ecx, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
inc edi
jmp 0x446e77
movzx eax, byte [edi]
sub eax, 0x19
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x4592c4]
movsx eax, byte [eax + 0x4592cc]
inc edi
test eax, eax
mov dword [ebp - 4], eax
jne 0x446e77
mov dword [ebp - 4], connect
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp ecx, eax
jg 0x447884
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0x10], edx
je 0x446f3e
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
mov dword [ebp - 0x10], eax
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x446ec5
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x446ea9
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
jne 0x447b6e
mov dword [ebp - 0xc], ebx
jmp 0x446ef3
cmp ebx, dword [esi + 0x54]
jae 0x446ef8
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [ebp - 0x10], eax
jne 0x446ef8
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x446edd
cmp dword [ebp - 8], 0
jne 0x446367
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
dec ebx
test eax, eax
jne 0x447df2
cmp ebx, dword [ebp - 0xc]
jae 0x446f12
jmp 0x447884
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x446f5c
movzx eax, byte [ebx]
inc ebx
cmp edx, eax
jne 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x446f48
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
jne 0x447bc9
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov eax, ecx
jge 0x446f8c
cmp ebx, dword [esi + 0x54]
jae 0x446f8c
movzx ecx, byte [ebx]
cmp edx, ecx
jne 0x446f8c
inc ebx
inc eax
cmp eax, dword [ebp - 4]
jl 0x446f79
cmp dword [ebp - 8], 0
jne 0x446367
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
dec ebx
test eax, eax
jne 0x447df2
cmp ebx, dword [ebp - 0xc]
jae 0x446fa6
jmp 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx ecx, byte [ebx]
inc edi
inc ebx
test byte [ebp + 0x18], 1
je 0x446ffe
mov eax, dword [esi + 0x24]
movzx edx, byte [edi]
mov cl, byte [ecx + eax]
inc edi
cmp byte [edx + eax], cl
jne 0x446367
jmp 0x447884
movzx eax, byte [edi]
inc edi
cmp eax, ecx
jmp 0x446ff3
xor ecx, ecx
mov ch, byte [edi + 1]
mov cl, byte [edi + 2]
mov dword [ebp - 4], ecx
add edi, 3
jmp 0x447093
xor eax, eax
mov ah, byte [edi + 1]
xor ecx, ecx
mov al, byte [edi + 2]
mov dword [ebp - 4], eax
xor eax, eax
cmp byte [edi], 0x2d
sete al
mov dword [ebp - 0xc], eax
jmp 0x447011
mov dword [ebp - 8], 1
xor ecx, ecx
inc edi
jmp 0x44708c
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x447039
xor eax, eax
inc eax
xor ecx, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
inc edi
jmp 0x447093
xor ecx, ecx
xor eax, eax
mov ah, byte [edi + 1]
mov dword [ebp - 8], 1
mov al, byte [edi + 2]
mov dword [ebp - 4], eax
jmp 0x447011
movzx eax, byte [edi]
sub eax, 0x26
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x4592c4]
movsx eax, byte [eax + 0x4592cc]
inc edi
test eax, eax
mov dword [ebp - 4], eax
jne 0x447093
mov dword [ebp - 4], connect
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp ecx, eax
jg 0x447884
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0x10], edx
je 0x44715a
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
mov dword [ebp - 0x10], eax
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x4470e1
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x4470c5
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
jne 0x447c1d
mov dword [ebp - 0xc], ebx
jmp 0x44710f
cmp ebx, dword [esi + 0x54]
jae 0x447114
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [ebp - 0x10], eax
je 0x447114
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4470f9
cmp dword [ebp - 8], 0
jne 0x446367
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x44712e
jmp 0x447884
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447178
movzx eax, byte [ebx]
inc ebx
cmp edx, eax
je 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447164
cmp ecx, dword [ebp - 4]
je 0x446367
cmp dword [ebp - 0xc], 0
jne 0x447c78
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov eax, ecx
jge 0x4471a8
cmp ebx, dword [esi + 0x54]
jae 0x4471a8
movzx ecx, byte [ebx]
cmp edx, ecx
je 0x4471a8
inc ebx
inc eax
cmp eax, dword [ebp - 4]
jl 0x447195
cmp dword [ebp - 8], 0
jne 0x446367
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x4471c2
jmp 0x447884
xor ecx, ecx
mov ch, byte [edi + 1]
mov dword [ebp - 0xc], 1
mov cl, byte [edi + 2]
mov dword [ebp - 4], ecx
mov dword [ebp - 0x10], ecx
add edi, 3
jmp 0x447291
xor eax, eax
mov ah, byte [edi + 1]
xor ecx, ecx
mov al, byte [edi + 2]
mov dword [ebp - 4], eax
xor eax, eax
cmp byte [edi], 0x3a
sete al
mov dword [ebp - 0xc], eax
jmp 0x447200
mov dword [ebp - 8], 1
xor ecx, ecx
mov dword [ebp - 0x10], ecx
inc edi
jmp 0x44728a
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x44722e
xor eax, eax
inc eax
xor ecx, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
inc edi
jmp 0x447291
xor ecx, ecx
xor eax, eax
mov ah, byte [edi + 1]
mov dword [ebp - 8], 1
mov al, byte [edi + 2]
mov dword [ebp - 4], eax
jmp 0x447200
movzx eax, byte [edi]
sub eax, 0x33
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x4592c4]
movsx eax, byte [eax + 0x4592cc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x447291
mov dword [ebp - 4], connect
movzx eax, byte [edi]
mov edx, dword [esi + 0x54]
mov dword [ebp - 0x14], eax
mov eax, edx
sub eax, ebx
inc edi
cmp ecx, eax
jg 0x447884
test ecx, ecx
jle 0x447499
mov eax, dword [ebp - 0x14]
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0x447d5b.13
jmp dword [eax*4 + 0x447f46]
test byte [ebp + 0x18], 4
jne case.0x4472be.12
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
cmp dword [esi + 0x18], 0
je 0x447303
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x44732b
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
add esp, 0x10
test eax, eax
jne 0x447884
mov ecx, dword [ebp - 0x10]
jmp 0x44732b
mov eax, dword [esi + 0x1c]
mov edx, dword [esi + 0x54]
sub edx, eax
cmp ebx, edx
ja 0x44732b
mov dl, byte [ebx]
cmp dl, byte [esi + 0x20]
jne 0x44732b
cmp eax, 1
je 0x447884
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x447884
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x4472d9
jmp 0x447499
add ebx, ecx
jmp 0x447499
cmp ecx, 1
mov dword [ebp + 0x14], 1
jl 0x447499
cmp ebx, edx
jae 0x447884
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jl 0x447884
cmp eax, 0xc
jle 0x447386
cmp eax, 0xd
je 0x44737c
cmp eax, 0x85
jne 0x447884
jmp 0x447386
cmp ebx, edx
jae 0x447386
cmp byte [ebx], 0xa
jne 0x447386
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447350
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 4
inc ebx
test dl, dl
jne 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x4473a4
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 4
inc ebx
test dl, dl
je 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x4473d4
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 1
inc ebx
test dl, dl
jne 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447404
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 1
inc ebx
test dl, dl
je 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x44742d
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 0x10
inc ebx
test dl, dl
jne 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447456
jmp 0x447499
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447499
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 0x10
inc ebx
test dl, dl
je 0x447884
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x44747f
mov edx, dword [ebp - 4]
cmp ecx, edx
je 0x446367
cmp dword [ebp - 0xc], 0
jne 0x447cd3
mov eax, dword [ebp - 0x14]
add eax, 0xfffffffb
cmp eax, 0xa
mov dword [ebp - 0xc], ebx
ja case.0x447d5b.13
jmp dword [eax*4 + 0x447f72]
test byte [ebp + 0x18], 4
jne case.0x4474c0.12
cmp ecx, edx
mov dword [ebp + 0x14], ecx
jge 0x447669
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x447669
cmp dword [esi + 0x18], 0
je 0x447503
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
add esp, 0x10
test eax, eax
jne 0x447669
jmp 0x447528
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x447528
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x447528
cmp ecx, 1
je 0x447669
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x447669
inc ebx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x4474d8
jmp 0x447669
mov eax, dword [esi + 0x54]
sub edx, ecx
mov ecx, edx
sub eax, ebx
cmp ecx, eax
jbe 0x447548
mov ecx, eax
add ebx, ecx
jmp 0x447669
cmp ecx, edx
jge 0x447669
mov edx, dword [esi + 0x54]
cmp ebx, edx
jae 0x447669
movzx eax, byte [ebx]
cmp eax, 0xd
jne 0x44757a
inc ebx
cmp ebx, edx
jae 0x447669
cmp byte [ebx], 0xa
jne 0x447595
jmp 0x447594
cmp eax, 0xa
je 0x447594
cmp eax, 0xb
je 0x447594
cmp eax, 0xc
je 0x447594
cmp eax, 0x85
jne 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x44755a
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 4
jne 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4475a8
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 4
je 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4475d5
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 1
jne 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4475f7
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 1
je 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x447615
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
jne 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x447633
jmp 0x447669
cmp ecx, edx
jge 0x447669
cmp ebx, dword [esi + 0x54]
jae 0x447669
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
je 0x447669
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x447651
cmp dword [ebp - 8], 0
jne 0x446367
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
dec ebx
test eax, eax
jne 0x447df2
cmp ebx, dword [ebp - 0xc]
jae 0x447683
jmp 0x447884
xor eax, eax
mov ah, byte [edi + 4]
mov al, byte [edi + 5]
lea edi, [edi + eax + 3]
jmp 0x4476c7
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x4476bd
jmp 0x44644f
xor eax, eax
mov ah, byte [edi + 3]
mov al, byte [edi + 4]
mov dword [ebp - 0x18], eax
add eax, eax
cmp eax, dword [esi + 0x14]
jl 0x4477cf
cmp ecx, 0x5b
mov dword [ebp + 0x20], 2
jge 0x447730
mov dword [ebp + 0x20], edx
jmp 0x447730
mov eax, dword [ebp + 0x24]
inc eax
push eax
push dword [ebp + 0x20]
movzx eax, byte [edi]
push dword [ebp + 0x1c]
movzx eax, byte [eax + 0x4595f8]
push dword [ebp + 0x18]
add eax, edi
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
cmp byte [eax + edi], 0x4e
je 0x4476f8
movzx eax, byte [edi]
movzx eax, byte [eax + 0x4595f8]
add edi, eax
or dword [ebp + 0x20], 4
jmp 0x4477ad
xor eax, eax
or eax, 4
mov dword [ebp + 0x20], eax
jmp 0x4477ad
push 2
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
mov edi, dword [ebp - 0x14]
jmp 0x4477a6
mov ecx, dword [ebp + 0x24]
inc ecx
push ecx
push eax
push dword [ebp + 0x1c]
push dword [ebp - 0x1c]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
add edi, 3
mov dword [ebp + 0x20], 4
mov eax, dword [esi]
cmp eax, dword [esi + 4]
jb 0x44631e
inc dword [esi]
push 0xfffffffffffffff8
jmp 0x447df1
push 0xffffffffffffffeb
jmp 0x447df1
push 0xffffffffffffffea
jmp 0x447df1
mov ecx, eax
mov eax, dword [esi + 0xc]
shl ecx, 2
mov dword [ebp - 0x10], ecx
add ecx, eax
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0xc], ecx
mov ecx, dword [esi + 0x10]
sub ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], edx
lea eax, [eax + ecx*4]
mov ecx, dword [eax]
mov dword [ebp - 4], ecx
mov ecx, dword [esi + 0x64]
mov dword [ebp - 0x14], ecx
mov ecx, ebx
sub ecx, dword [esi + 0x50]
cmp dword [ebp + 0x14], 0x5c
mov dword [eax], ecx
jne 0x447811
mov dword [ebp + 0x20], 2
jmp 0x447815
and dword [ebp + 0x20], 0
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
movzx eax, byte [edi]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x4595f8]
push dword [ebp + 0x1c]
add eax, edi
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
mov eax, dword [ebp - 0x14]
mov dword [esi + 0x64], eax
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x44781c
mov ecx, dword [esi + 0xc]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x1c]
mov dword [eax + ecx], edx
mov ecx, dword [esi + 0xc]
mov edx, dword [ebp - 0xc]
mov dword [eax + ecx + 4], edx
mov eax, dword [esi + 0x10]
sub eax, dword [ebp - 0x18]
mov ecx, dword [esi + 0xc]
mov edx, dword [ebp - 4]
mov dword [ecx + eax*4], edx
xor eax, eax
jmp 0x447df2
cmp dword [esi + 0x40], edx
je 0x447895
cmp ebx, dword [esi + 0x58]
je 0x447884
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x60], eax
xor eax, eax
inc eax
jmp 0x447df2
mov eax, dword [esi + 0x4c]
xor ecx, ecx
mov ch, byte [edi + 1]
mov cl, byte [edi + 2]
add ecx, eax
cmp ecx, eax
mov dword [ebp + 0x14], ecx
jne 0x4478bf
mov dword [ebp - 0x30], edx
jmp 0x4478ca
xor eax, eax
mov ah, byte [ecx + 3]
mov al, byte [ecx + 4]
mov dword [ebp - 0x30], eax
mov eax, dword [esi + 0x74]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x10]
add edi, 3
cmp eax, 0x1e
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x20], eax
jg 0x4478f2
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x24], ecx
jmp 0x44790e
shl eax, 2
push eax
call dword [0x464148]
test eax, eax
pop ecx
mov dword [ebp - 0x24], eax
jne 0x44790b
push 0xfffffffffffffffa
jmp 0x447df1
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push dword [esi + 0xc]
push dword [ebp - 0x24]
call fcn.00449a60
mov eax, dword [esi + 0x58]
mov ecx, dword [ebp + 0x24]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0x14]
add esp, 0xc
mov dword [esi + 0x58], ebx
mov al, byte [eax]
cmp al, 0x5b
sbb edi, edi
and edi, 0xfffffffe
inc edi
inc edi
inc ecx
mov dword [ebp - 8], ecx
push dword [ebp - 8]
movzx eax, al
movzx eax, byte [eax + 0x4595f8]
add eax, dword [ebp + 0x14]
push edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.004462fe
add esp, 0x20
cmp eax, 1
je 0x4479c5
test eax, eax
jne 0x447df2
lea eax, [ebp - 0x34]
mov dword [esi + 0x74], eax
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push dword [ebp - 0x24]
push dword [esi + 0xc]
call fcn.00449a60
mov eax, dword [ebp + 0x14]
xor ecx, ecx
mov ch, byte [eax + 1]
add esp, 0xc
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 0x14], eax
mov al, byte [eax]
cmp al, 0x4e
je 0x44793e
mov eax, dword [ebp - 0x34]
mov dword [esi + 0x74], eax
lea eax, [ebp - 0xe4]
cmp dword [ebp - 0x24], eax
je 0x447884
push dword [ebp - 0x24]
call dword [0x46414c]
pop ecx
jmp 0x447884
mov eax, dword [ebp - 0x34]
mov dword [esi + 0x74], eax
lea eax, [ebp - 0xe4]
cmp dword [ebp - 0x24], eax
je 0x44789e
push dword [ebp - 0x24]
call dword [0x46414c]
pop ecx
jmp 0x44789e
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.004462a0
test eax, eax
pop ecx
pop ecx
je 0x447884
add ebx, dword [ebp - 0x18]
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x4479e9
jmp 0x447df2
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov dword [ebp + 0x14], ecx
jge 0x447a71
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.004462a0
test eax, eax
pop ecx
pop ecx
je 0x447a68
add ebx, dword [ebp - 0x18]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x447a43
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
sub ebx, dword [ebp - 0x18]
cmp ebx, dword [ebp - 0xc]
jae 0x447a78
jmp 0x447884
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x14]
shr eax, 3
mov al, byte [eax + ecx]
inc ebx
test al, dl
je 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447aa6
jmp 0x447df2
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
jge 0x447b3b
cmp ebx, dword [esi + 0x54]
jae 0x447b32
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x14]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x447b32
inc ebx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x447b07
cmp ebx, dword [ebp - 0xc]
jb 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
jne 0x447df2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x447b42
jmp 0x447884
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x447baa
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x24]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447b7b
jmp 0x447df2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x447bfe
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447bd6
jmp 0x447df2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x447c59
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x24]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447c2a
jmp 0x447df2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x447cad
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
cmp ebx, dword [esi + 0x54]
jae 0x447884
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447c85
jmp 0x447df2
push 0xfffffffffffffff2
jmp 0x447df1
mov eax, dword [ebp - 0x10]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push eax
jmp 0x447dcf
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x447884
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x447884
test byte [ebp + 0x18], 4
jne 0x447d48
cmp dword [esi + 0x18], 0
je 0x447d23
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push ebx
call fcn.004486ca
add esp, 0x10
test eax, eax
jne 0x447884
jmp 0x447d48
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x447d48
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x447d48
cmp ecx, 1
je 0x447884
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x447884
mov ecx, dword [ebp - 0x14]
movzx eax, byte [ebx]
add ecx, 0xfffffffb
inc ebx
cmp ecx, 0xa
ja case.0x447d5b.13
jmp dword [ecx*4 + 0x447f9e]
cmp eax, 0xa
jb 0x447884
cmp eax, 0xc
jbe case.0x447d5b.11
cmp eax, 0xd
je 0x447d7c
cmp eax, 0x85
jmp 0x447d90
cmp ebx, dword [esi + 0x54]
jae case.0x447d5b.11
cmp byte [ebx], 0xa
jne case.0x447d5b.11
inc ebx
jmp case.0x447d5b.11
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 4
jne 0x447884
jmp case.0x447d5b.11
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 4
jmp 0x447dc3
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 1
jmp 0x447d90
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 1
jmp 0x447dc3
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x447d90
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
je 0x447884
inc dword [ebp + 0x14]
push dword [ebp - 8]
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push edi
push ebx
call fcn.004462fe
add esp, 0x20
test eax, eax
je 0x447ce6
jmp 0x447df2
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret