Function at 0x446eda
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 0x44839b
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [ebp + 0x24]
inc dword [esi]
cmp eax, dword [esi + 8]
jae 0x4483a4
test byte [ebp + 0x20], 2
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x1c], eax
je 0x446f43
test byte [ebp + 0x20], 4
je 0x446f35
mov ecx, dword [esi + 0x70]
cmp ecx, 0x3e8
jge 0x4483ab
mov eax, dword [esi + 0x6c]
lea eax, [eax + ecx*8]
inc ecx
mov dword [esi + 0x70], ecx
jmp 0x446f38
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 eax, eax
cmp dword [esi + 0x44], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], eax
mov dword [ebp + 0x14], ecx
je 0x446f68
cmp ebx, dword [esi + 0x54]
jb 0x446f68
cmp ebx, dword [esi + 0x58]
jbe 0x446f68
xor edx, edx
inc edx
mov dword [esi + 0x48], edx
jmp 0x446f6b
xor edx, edx
inc edx
cmp ecx, 0x62
ja case.0x446f7b.13
movzx eax, byte [ecx + 0x448ad2]
jmp dword [eax*4 + 0x4489ea]
lea eax, [edi + 3]
mov cl, byte [eax]
cmp cl, 0x5f
jne 0x446faf
mov eax, dword [esi + 0x74]
xor ecx, ecx
test eax, eax
mov ch, byte [edi + 4]
mov cl, byte [edi + 5]
je 0x44700a
cmp ecx, 0xffff
je 0x446fa8
cmp ecx, dword [eax + 4]
jne 0x44700a
push 3
mov ecx, edx
pop eax
jmp 0x447014
cmp cl, 0x5e
jne 0x446fce
xor eax, eax
mov ah, byte [edi + 4]
mov al, byte [edi + 5]
add eax, eax
cmp eax, dword [ebp + 0x10]
jge 0x44700a
mov ecx, dword [esi + 0xc]
cmp dword [ecx + eax*4], 0
jl 0x44700a
jmp 0x446fa8
cmp cl, 0x60
jne 0x446fdf
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
jmp 0x44701a
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.00446eda
add esp, 0x20
cmp eax, 1
je 0x44828f
test eax, eax
jne 0x4489e2
xor ecx, ecx
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
test ecx, ecx
jne 0x447023
cmp byte [edi], 0x4e
jne 0x447135
add edi, 3
cmp dword [ebp + 0x14], 0x5d
jne 0x448333
push 2
pop eax
jmp 0x448335
mov edi, dword [esi + 0x74]
test edi, edi
je 0x44846e
cmp dword [edi + 4], 0
jne 0x44846e
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.0044af60
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 0x446f43
movzx eax, byte [edi + 1]
mov dword [ebp + 0x18], eax
inc edi
inc edi
jmp 0x446f43
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.00446eda
add esp, 0x20
cmp eax, 1
je 0x4470c0
test eax, eax
jne 0x4489e2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x446f7b.82
cmp byte [edi], 0x4f
je 0x448467
test byte [ebp + 0x20], 1
jne 0x4485c4
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x4470d3
mov eax, dword [esi + 0x60]
add edi, 3
mov dword [ebp + 0x10], eax
jmp 0x446f43
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.00446eda
add esp, 0x20
cmp eax, 1
je 0x448467
test eax, eax
jne 0x4489e2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x446f7b.83
test byte [ebp + 0x20], 1
jne 0x4485c4
add edi, 3
jmp 0x446f43
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
sub ebx, eax
cmp ebx, dword [esi + 0x50]
jb 0x448467
jmp 0x447135
cmp dword [0x4673c0], 0
je 0x4471d2
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 [0x4673c0]
test eax, eax
pop ecx
jg 0x448467
jl 0x4489e2
add edi, 6
jmp 0x446f43
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.00446eda
add esp, 0x20
cmp eax, 1
je 0x447218
test eax, eax
jne 0x4489e2
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x4471e0
mov al, byte [edi]
cmp al, 0x57
je 0x447226
cmp al, 0x4e
jne 0x448467
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x447226
cmp byte [edi], 0x4f
mov eax, dword [esi + 0x60]
mov ebx, dword [esi + 0x5c]
mov dword [ebp + 0x10], eax
je 0x447135
cmp ebx, dword [ebp - 0x10]
je 0x447135
lea eax, [edi + 3]
cmp byte [eax], 0x13
mov dword [ebp - 0x14], eax
jne 0x44726a
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 0x44833d
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp - 0x14]
push ebx
call fcn.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
mov edi, dword [ebp + 0x14]
jmp 0x448389
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je case.0x446f7b.78
jmp 0x446f43
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x4472d8
jmp 0x447135
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 0x4472ef
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
jmp 0x446f43
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 0x447352
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 0x447356
and dword [ebp - 0x10], 0
cmp cl, 0x52
je 0x4485cc
cmp cl, 0x53
je 0x4485cc
cmp cl, 0x54
je 0x4485cc
cmp cl, 0x55
je 0x4485cc
cmp cl, 0x57
je 0x4485cc
cmp cl, 0x59
je 0x447391
cmp cl, 0x5c
jne 0x44741e
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 0x4473b0
mov dword [esi + 0x2c], 1
jmp 0x4473e2
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 0x4473df
add eax, 2
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x14]
mov ecx, dword [esi + 0x74]
test ecx, ecx
je 0x44741e
cmp dword [ecx + 4], edx
jne 0x44741e
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.0044a6b0
mov eax, dword [ebp - 0x1c]
mov edi, dword [edi + 8]
add esp, 0xc
mov dword [ebp + 0x18], eax
jmp 0x446f43
cmp byte [edi], 0x4f
mov ecx, dword [ebp - 0x1c]
mov dword [ebp + 0x18], ecx
je 0x447135
cmp ebx, dword [ebp - 0x10]
je 0x447135
cmp byte [eax], 0x5b
sbb eax, eax
and eax, 0xfffffffe
inc eax
inc eax
cmp byte [edi], 0x51
mov dword [ebp + 0x20], eax
jne 0x448362
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
mov edi, dword [ebp + 0x14]
jmp 0x44832d
cmp dword [esi + 0x30], 0
je 0x447487
cmp ebx, dword [esi + 0x50]
je 0x448467
test byte [ebp + 0x18], 2
je case.0x446f7b.1
mov ecx, dword [esi + 0x50]
cmp ebx, ecx
je 0x4474f4
cmp ebx, dword [esi + 0x54]
je 0x448467
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4474c7
cmp ebx, ecx
jbe 0x448467
push 0
lea edx, [esi + 0x1c]
push edx
push ecx
push eax
push ebx
call fcn.0044937c
add esp, 0x14
test eax, eax
je 0x448467
jmp 0x4474f4
mov eax, dword [esi + 0x1c]
add ecx, eax
cmp ebx, ecx
jb 0x448467
mov ecx, ebx
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [esi + 0x20]
jne 0x448467
cmp eax, 1
je 0x4474f4
mov al, byte [ecx + 1]
cmp al, byte [esi + 0x21]
jne 0x448467
inc edi
jmp 0x446f43
cmp ebx, dword [esi + 0x50]
jmp 0x4474ee
mov eax, dword [esi + 0x68]
add eax, dword [esi + 0x50]
cmp ebx, eax
jmp 0x4474ee
test byte [ebp + 0x18], 2
je 0x447555
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x44754f
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x44752d
push 0
lea edx, [esi + 0x1c]
push edx
push eax
push ecx
push ebx
call fcn.004492f7
jmp 0x4474ba
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x448467
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x448467
cmp ecx, 1
je 0x4474f4
mov al, byte [ebx + 1]
jmp 0x4474eb
cmp dword [esi + 0x34], 0
jmp 0x4474ee
cmp dword [esi + 0x34], 0
jne 0x448467
cmp dword [esi + 0x3c], 0
jne case.0x446f7b.18
mov eax, dword [esi + 0x54]
cmp ebx, eax
je 0x4474f4
mov edx, dword [esi + 0x18]
test edx, edx
je 0x447596
cmp ebx, eax
jae 0x448467
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push edx
push ebx
call fcn.004492f7
add esp, 0x14
test eax, eax
je 0x448467
jmp 0x4475bf
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x448467
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x448467
cmp ecx, 1
je 0x4475bf
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
jne 0x448467
mov eax, dword [esi + 0x54]
sub eax, dword [esi + 0x1c]
jmp 0x447505
cmp ebx, dword [esi + 0x54]
jb 0x448467
jmp 0x4474f4
cmp ebx, dword [esi + 0x50]
je 0x4475ee
movzx eax, byte [ebx - 1]
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
je 0x4475ee
mov ecx, edx
jmp 0x4475f0
xor ecx, ecx
cmp ebx, dword [esi + 0x54]
jae 0x447606
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
je 0x447606
xor eax, eax
inc eax
jmp 0x447608
xor eax, eax
mov dl, byte [edi]
inc edi
cmp dl, 4
jne 0x447619
xor edx, edx
cmp eax, ecx
sete dl
jmp 0x447620
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
test eax, eax
je 0x446f43
jmp 0x448467
test byte [ebp + 0x18], 4
jne case.0x446f7b.12
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x44765e
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae case.0x446f7b.12
push 0
lea edx, [esi + 0x1c]
push edx
push eax
push ecx
push ebx
call fcn.004492f7
add esp, 0x14
test eax, eax
jne 0x448467
jmp case.0x446f7b.12
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x54]
sub ecx, eax
cmp ebx, ecx
ja case.0x446f7b.12
mov cl, byte [ebx]
cmp cl, byte [esi + 0x20]
jne case.0x446f7b.12
cmp eax, edx
je 0x448467
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x448467
mov eax, ebx
inc ebx
cmp eax, dword [esi + 0x54]
jae 0x448467
jmp 0x4474f4
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 4
jmp 0x4474ee
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 4
jmp 0x4474bf
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 1
jmp 0x4474ee
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 1
jmp 0x4474bf
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x4474ee
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x28]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x4474bf
mov ecx, dword [esi + 0x54]
cmp ebx, ecx
jae 0x448467
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jb 0x448467
cmp eax, 0xc
jbe 0x4474f4
cmp eax, 0xd
je 0x447778
cmp eax, 0x85
je 0x4474f4
cmp eax, 0x2027
jbe 0x448467
cmp eax, 0x2029
ja 0x448467
jmp 0x4474f4
cmp ebx, ecx
jae 0x4474f4
cmp byte [ebx], 0xa
jne 0x4474f4
inc ebx
jmp 0x4474f4
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 0x4477b7
mov ecx, dword [esi + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x4477b7
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x4477bd
mov edx, dword [esi + 0x54]
sub edx, ebx
inc edx
mov al, byte [edi]
cmp al, 0x40
mov dword [ebp - 0x18], edx
jb 0x447898
cmp al, 0x45
jbe 0x447806
cmp al, 0x47
ja 0x447898
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 0x447801
mov dword [ebp - 4], SysReAllocString
add edi, 5
jmp 0x447834
movzx eax, al
sub eax, 0x40
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x45a2d4]
movsx eax, byte [eax + 0x45a2dc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x447834
mov dword [ebp - 4], SysReAllocString
test edx, edx
je 0x446f43
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447872
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.00446e7c
test eax, eax
pop ecx
pop ecx
je 0x448467
add ebx, dword [ebp - 0x18]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 0x10]
jle 0x447846
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
je 0x448626
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 0x448607
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.00446e7c
test eax, eax
pop ecx
pop ecx
je 0x448467
add ebx, dword [ebp - 0x18]
jmp 0x446f43
lea eax, [edi + 1]
add edi, 0x21
mov dword [ebp - 0x14], eax
mov al, byte [edi]
cmp al, 0x40
jb 0x447932
cmp al, 0x45
jbe 0x447902
cmp al, 0x47
ja 0x447932
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 0x4478fd
mov dword [ebp - 4], SysReAllocString
add edi, 5
jmp 0x44793b
movzx eax, al
sub eax, 0x40
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x45a2d4]
movsx eax, byte [eax + 0x45a2dc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x44793b
mov dword [ebp - 4], SysReAllocString
jmp 0x44793b
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 0x447978
cmp ebx, dword [esi + 0x54]
jae 0x448467
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 0x448467
inc dword [ebp + 0x14]
mov ecx, dword [ebp - 0x10]
cmp dword [ebp + 0x14], ecx
jle 0x447945
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
mov dword [ebp + 0x14], ecx
je 0x4486ed
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp - 8], eax
push eax
jmp 0x4486ce
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp eax, edx
jl 0x448467
mov al, byte [ebx]
inc ebx
cmp byte [edi + 1], al
jne 0x448467
jmp 0x447082
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp eax, edx
jl 0x448467
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 0x4479ae
xor ecx, ecx
mov ch, byte [edi + 1]
mov cl, byte [edi + 2]
mov dword [ebp - 4], ecx
add edi, 3
jmp 0x447a53
mov dword [ebp - 8], edx
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 0x4479e4
mov dword [ebp - 8], 1
xor ecx, ecx
inc edi
jmp 0x447a4c
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x447a0f
xor eax, eax
inc eax
xor ecx, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
inc edi
jmp 0x447a53
movzx eax, byte [edi]
sub eax, 0x19
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x45a2d4]
movsx eax, byte [eax + 0x45a2dc]
inc edi
test eax, eax
mov dword [ebp - 4], eax
jne 0x447a53
mov dword [ebp - 4], SysReAllocString
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp ecx, eax
jg 0x448467
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0x10], edx
je 0x447b1a
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 0x447aa1
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447a85
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
jne 0x44875c
mov dword [ebp - 0xc], ebx
jmp 0x447acf
cmp ebx, dword [esi + 0x54]
jae 0x447ad4
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [ebp - 0x10], eax
jne 0x447ad4
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x447ab9
cmp dword [ebp - 8], 0
jne 0x446f43
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
dec ebx
test eax, eax
jne 0x4489e2
cmp ebx, dword [ebp - 0xc]
jae 0x447aee
jmp 0x448467
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447b38
movzx eax, byte [ebx]
inc ebx
cmp edx, eax
jne 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447b24
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
jne 0x4487b7
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov eax, ecx
jge 0x447b68
cmp ebx, dword [esi + 0x54]
jae 0x447b68
movzx ecx, byte [ebx]
cmp edx, ecx
jne 0x447b68
inc ebx
inc eax
cmp eax, dword [ebp - 4]
jl 0x447b55
cmp dword [ebp - 8], 0
jne 0x446f43
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
dec ebx
test eax, eax
jne 0x4489e2
cmp ebx, dword [ebp - 0xc]
jae 0x447b82
jmp 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx ecx, byte [ebx]
inc edi
inc ebx
test byte [ebp + 0x18], 1
je 0x447bda
mov eax, dword [esi + 0x24]
movzx edx, byte [edi]
mov cl, byte [ecx + eax]
inc edi
cmp byte [edx + eax], cl
jne 0x446f43
jmp 0x448467
movzx eax, byte [edi]
inc edi
cmp eax, ecx
jmp 0x447bcf
xor ecx, ecx
mov ch, byte [edi + 1]
mov cl, byte [edi + 2]
mov dword [ebp - 4], ecx
add edi, 3
jmp 0x447c6f
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 0x447bed
mov dword [ebp - 8], 1
xor ecx, ecx
inc edi
jmp 0x447c68
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x447c15
xor eax, eax
inc eax
xor ecx, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
inc edi
jmp 0x447c6f
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 0x447bed
movzx eax, byte [edi]
sub eax, 0x26
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x45a2d4]
movsx eax, byte [eax + 0x45a2dc]
inc edi
test eax, eax
mov dword [ebp - 4], eax
jne 0x447c6f
mov dword [ebp - 4], SysReAllocString
mov eax, dword [esi + 0x54]
sub eax, ebx
cmp ecx, eax
jg 0x448467
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x18], 1
mov dword [ebp - 0x10], edx
je 0x447d36
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 0x447cbd
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447ca1
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
jne 0x44880b
mov dword [ebp - 0xc], ebx
jmp 0x447ceb
cmp ebx, dword [esi + 0x54]
jae 0x447cf0
movzx edx, byte [ebx]
mov eax, dword [esi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [ebp - 0x10], eax
je 0x447cf0
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x447cd5
cmp dword [ebp - 8], 0
jne 0x446f43
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x447d0a
jmp 0x448467
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x447d54
movzx eax, byte [ebx]
inc ebx
cmp edx, eax
je 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447d40
cmp ecx, dword [ebp - 4]
je 0x446f43
cmp dword [ebp - 0xc], 0
jne 0x448866
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov eax, ecx
jge 0x447d84
cmp ebx, dword [esi + 0x54]
jae 0x447d84
movzx ecx, byte [ebx]
cmp edx, ecx
je 0x447d84
inc ebx
inc eax
cmp eax, dword [ebp - 4]
jl 0x447d71
cmp dword [ebp - 8], 0
jne 0x446f43
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x447d9e
jmp 0x448467
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 0x447e6d
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 0x447ddc
mov dword [ebp - 8], 1
xor ecx, ecx
mov dword [ebp - 0x10], ecx
inc edi
jmp 0x447e66
xor ecx, ecx
inc ecx
mov dword [ebp - 8], ecx
jmp 0x447e0a
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 0x447e6d
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 0x447ddc
movzx eax, byte [edi]
sub eax, 0x33
mov ecx, eax
and ecx, 1
mov dword [ebp - 0xc], ecx
movsx ecx, byte [eax + 0x45a2d4]
movsx eax, byte [eax + 0x45a2dc]
inc edi
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 4], eax
jne 0x447e6d
mov dword [ebp - 4], SysReAllocString
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 0x448467
test ecx, ecx
jle 0x448077
mov eax, dword [ebp - 0x14]
add eax, 0xfffffffb
cmp eax, 0xa
ja case.0x44894b.13
jmp dword [eax*4 + 0x448b36]
test byte [ebp + 0x18], 4
jne case.0x447e9a.12
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov edx, dword [esi + 0x18]
test edx, edx
je 0x447ee1
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x447f09
push 0
lea ecx, [esi + 0x1c]
push ecx
push eax
push edx
push ebx
call fcn.004492f7
add esp, 0x14
test eax, eax
jne 0x448467
mov ecx, dword [ebp - 0x10]
jmp 0x447f09
mov eax, dword [esi + 0x1c]
mov edx, dword [esi + 0x54]
sub edx, eax
cmp ebx, edx
ja 0x447f09
mov dl, byte [ebx]
cmp dl, byte [esi + 0x20]
jne 0x447f09
cmp eax, 1
je 0x448467
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x448467
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447eb5
jmp 0x448077
add ebx, ecx
jmp 0x448077
cmp ecx, 1
mov dword [ebp + 0x14], 1
jl 0x448077
cmp ebx, edx
jae 0x448467
movzx eax, byte [ebx]
inc ebx
cmp eax, 0xa
jl 0x448467
cmp eax, 0xc
jle 0x447f64
cmp eax, 0xd
je 0x447f5a
cmp eax, 0x85
jne 0x448467
jmp 0x447f64
cmp ebx, edx
jae 0x447f64
cmp byte [ebx], 0xa
jne 0x447f64
inc ebx
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447f2e
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 4
inc ebx
test dl, dl
jne 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447f82
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 4
inc ebx
test dl, dl
je 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447fb2
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 1
inc ebx
test dl, dl
jne 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x447fe2
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 1
inc ebx
test dl, dl
je 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x44800b
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 0x10
inc ebx
test dl, dl
jne 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x448034
jmp 0x448077
xor eax, eax
inc eax
cmp ecx, eax
mov dword [ebp + 0x14], eax
jl 0x448077
mov eax, dword [esi + 0x28]
movzx edx, byte [ebx]
mov dl, byte [edx + eax]
and dl, 0x10
inc ebx
test dl, dl
je 0x448467
inc dword [ebp + 0x14]
cmp dword [ebp + 0x14], ecx
jle 0x44805d
mov edx, dword [ebp - 4]
cmp ecx, edx
je 0x446f43
cmp dword [ebp - 0xc], 0
jne 0x4488c1
mov eax, dword [ebp - 0x14]
add eax, 0xfffffffb
cmp eax, 0xa
mov dword [ebp - 0xc], ebx
ja case.0x44894b.13
jmp dword [eax*4 + 0x448b62]
test byte [ebp + 0x18], 4
jne case.0x44809e.12
cmp ecx, edx
mov dword [ebp + 0x14], ecx
jge 0x448249
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x448249
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x4480e3
push 0
lea edx, [esi + 0x1c]
push edx
push eax
push ecx
push ebx
call fcn.004492f7
add esp, 0x14
test eax, eax
jne 0x448249
jmp 0x448108
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x448108
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x448108
cmp ecx, 1
je 0x448249
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x448249
inc ebx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x4480b6
jmp 0x448249
mov eax, dword [esi + 0x54]
sub edx, ecx
mov ecx, edx
sub eax, ebx
cmp ecx, eax
jbe 0x448128
mov ecx, eax
add ebx, ecx
jmp 0x448249
cmp ecx, edx
jge 0x448249
mov edx, dword [esi + 0x54]
cmp ebx, edx
jae 0x448249
movzx eax, byte [ebx]
cmp eax, 0xd
jne 0x44815a
inc ebx
cmp ebx, edx
jae 0x448249
cmp byte [ebx], 0xa
jne 0x448175
jmp 0x448174
cmp eax, 0xa
je 0x448174
cmp eax, 0xb
je 0x448174
cmp eax, 0xc
je 0x448174
cmp eax, 0x85
jne 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x44813a
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 4
jne 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x448188
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 4
je 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4481b5
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 1
jne 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4481d7
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 1
je 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x4481f5
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
jne 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x448213
jmp 0x448249
cmp ecx, edx
jge 0x448249
cmp ebx, dword [esi + 0x54]
jae 0x448249
movzx eax, byte [ebx]
mov edx, dword [esi + 0x28]
test byte [eax + edx], 0x10
je 0x448249
inc ebx
inc ecx
cmp ecx, dword [ebp - 4]
jl 0x448231
cmp dword [ebp - 8], 0
jne 0x446f43
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
dec ebx
test eax, eax
jne 0x4489e2
cmp ebx, dword [ebp - 0xc]
jae 0x448263
jmp 0x448467
xor eax, eax
mov ah, byte [edi + 4]
mov al, byte [edi + 5]
lea edi, [edi + eax + 3]
jmp 0x4482a7
xor eax, eax
mov ah, byte [edi + 1]
mov al, byte [edi + 2]
add edi, eax
cmp byte [edi], 0x4e
je 0x44829d
jmp 0x447023
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 0x4483b2
cmp ecx, 0x5b
jl 0x4482d5
mov dword [ebp + 0x20], 2
jmp 0x448313
and dword [ebp + 0x20], 0
jmp 0x448313
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 + 0x45a2e8]
push dword [ebp + 0x18]
add eax, edi
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
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 0x4482db
movzx eax, byte [edi]
movzx eax, byte [eax + 0x45a2e8]
add edi, eax
or dword [ebp + 0x20], 4
jmp 0x448390
xor eax, eax
or eax, 4
mov dword [ebp + 0x20], eax
jmp 0x448390
push 2
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push ebx
call fcn.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
mov edi, dword [ebp - 0x14]
jmp 0x448389
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
add edi, 3
mov dword [ebp + 0x20], 4
mov eax, dword [esi]
cmp eax, dword [esi + 4]
jb 0x446efa
inc dword [esi]
push 0xfffffffffffffff8
jmp 0x4489e1
push 0xffffffffffffffeb
jmp 0x4489e1
push 0xffffffffffffffea
jmp 0x4489e1
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 0x4483f4
mov dword [ebp + 0x20], 2
jmp 0x4483f8
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 + 0x45a2e8]
push dword [ebp + 0x1c]
add eax, edi
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x10]
push eax
push ebx
call fcn.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
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 0x4483ff
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 0x4489e2
cmp dword [esi + 0x40], 0
je 0x448479
cmp ebx, dword [esi + 0x58]
je 0x448467
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x60], eax
mov dword [esi + 0x5c], ebx
mov eax, edx
jmp 0x4489e2
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 0x4484a3
and dword [ebp - 0x30], 0
jmp 0x4484ae
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 0x4484d6
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x24], ecx
jmp 0x4484f2
shl eax, 2
push eax
call dword [0x465148]
test eax, eax
pop ecx
mov dword [ebp - 0x24], eax
jne 0x4484ef
push 0xfffffffffffffffa
jmp 0x4489e1
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push dword [esi + 0xc]
push dword [ebp - 0x24]
call fcn.0044a6b0
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 + 0x45a2e8]
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.00446eda
add esp, 0x20
cmp eax, 1
je 0x4485a9
test eax, eax
jne 0x4489e2
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.0044a6b0
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 0x448522
mov eax, dword [ebp - 0x34]
mov dword [esi + 0x74], eax
lea eax, [ebp - 0xe4]
cmp dword [ebp - 0x24], eax
je 0x448467
push dword [ebp - 0x24]
call dword [0x46514c]
pop ecx
jmp 0x448467
mov eax, dword [ebp - 0x34]
mov dword [esi + 0x74], eax
lea eax, [ebp - 0xe4]
cmp dword [ebp - 0x24], eax
je 0x4485c4
push dword [ebp - 0x24]
call dword [0x46514c]
pop ecx
xor eax, eax
inc eax
jmp 0x4489e2
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x60], eax
jmp 0x4485c4
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.00446e7c
test eax, eax
pop ecx
pop ecx
je 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x4485d7
jmp 0x4489e2
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
mov dword [ebp + 0x14], ecx
jge 0x44865f
push dword [ebp + 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push ebx
mov ecx, esi
call fcn.00446e7c
test eax, eax
pop ecx
pop ecx
je 0x448656
add ebx, dword [ebp - 0x18]
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x448631
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
sub ebx, dword [ebp - 0x18]
cmp ebx, dword [ebp - 0xc]
jae 0x448666
jmp 0x448467
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
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 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x448694
jmp 0x4489e2
cmp ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
jge 0x448729
cmp ebx, dword [esi + 0x54]
jae 0x448720
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 0x448720
inc ebx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jl 0x4486f5
cmp ebx, dword [ebp - 0xc]
jb 0x448467
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.00446eda
add esp, 0x20
test eax, eax
jne 0x4489e2
dec ebx
cmp ebx, dword [ebp - 0xc]
jae 0x448730
jmp 0x448467
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x448798
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x24]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x448769
jmp 0x4489e2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x4487ec
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0x10], eax
jne 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x4487c4
jmp 0x4489e2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x448847
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x24]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x448818
jmp 0x4489e2
mov eax, dword [ebp + 0x24]
inc eax
mov dword [ebp + 0x14], ecx
mov dword [ebp - 8], eax
push eax
jmp 0x44889b
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
cmp ebx, dword [esi + 0x54]
jae 0x448467
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp - 0x10], eax
je 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x448873
jmp 0x4489e2
push 0xfffffffffffffff2
jmp 0x4489e1
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 0x4489bf
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x14], eax
jge 0x448467
mov eax, dword [esi + 0x54]
cmp ebx, eax
jae 0x448467
test byte [ebp + 0x18], 4
jne 0x448938
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x448913
push 0
lea edx, [esi + 0x1c]
push edx
push eax
push ecx
push ebx
call fcn.004492f7
add esp, 0x14
test eax, eax
jne 0x448467
jmp 0x448938
mov ecx, dword [esi + 0x1c]
sub eax, ecx
cmp ebx, eax
ja 0x448938
mov al, byte [ebx]
cmp al, byte [esi + 0x20]
jne 0x448938
cmp ecx, 1
je 0x448467
mov al, byte [ebx + 1]
cmp al, byte [esi + 0x21]
je 0x448467
mov ecx, dword [ebp - 0x14]
movzx eax, byte [ebx]
add ecx, 0xfffffffb
inc ebx
cmp ecx, 0xa
ja case.0x44894b.13
jmp dword [ecx*4 + 0x448b8e]
cmp eax, 0xa
jb 0x448467
cmp eax, 0xc
jbe case.0x44894b.11
cmp eax, 0xd
je 0x44896c
cmp eax, 0x85
jmp 0x448980
cmp ebx, dword [esi + 0x54]
jae case.0x44894b.11
cmp byte [ebx], 0xa
jne case.0x44894b.11
inc ebx
jmp case.0x44894b.11
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 4
jne 0x448467
jmp case.0x44894b.11
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 4
jmp 0x4489b3
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 1
jmp 0x448980
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 1
jmp 0x4489b3
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x448980
mov ecx, dword [esi + 0x28]
test byte [eax + ecx], 0x10
je 0x448467
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.00446eda
add esp, 0x20
test eax, eax
je 0x4488d4
jmp 0x4489e2
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret