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

Disassembly:
sub esp, 0x7c
mov eax, dword [0x536400]
xor eax, esp
mov dword [esp + 0x78], eax
push ebp
mov ebp, dword [esp + 0x84]
mov dword [esp + 0x64], ecx
mov ecx, dword [ebp + 4]
xor eax, eax
cmp ecx, 0xa
jne 0x449018
mov dword [ebp + 0xfa14], eax
mov dword [ebp + 0xfa18], eax
mov dword [ebp + 0xfa1c], eax
mov dword [ebp + 0xfa20], eax
mov dword [ebp + 0xfa24], eax
mov dword [ebp + 0xfa28], eax
mov dword [ebp + 0xfa2c], eax
mov dword [ebp + 0xfa30], eax
mov dword [ebp + 0xfa34], eax
mov dword [ebp + 0xfa38], eax
mov dword [ebp + 0xfa3c], eax
mov dword [ebp + 0xfa40], eax
mov dword [ebp + 0xfa44], eax
mov dword [ebp + 0xfa48], eax
mov dword [ebp + 0xfa4c], eax
mov dword [ebp + 0xfa50], eax
mov dword [ebp + 0xfa54], eax
mov dword [ebp + 0xfa58], eax
mov dword [ebp + 0xfa5c], eax
mov dword [ebp + 0xfa60], eax
mov dword [ebp + 0xfa64], eax
mov dword [ebp + 0xfa68], eax
mov dword [ebp + 0xfa6c], eax
mov dword [ebp + 0xfa70], eax
mov edx, dword [ebp + 0xfa14]
mov dword [esp + 4], edx
mov edx, dword [ebp + 0xfa18]
mov dword [esp + 0x14], edx
mov edx, dword [ebp + 0xfa1c]
mov dword [esp + 0x20], edx
mov edx, dword [ebp + 0xfa20]
mov dword [esp + 0x48], edx
mov edx, dword [ebp + 0xfa24]
mov dword [esp + 0x50], edx
mov edx, dword [ebp + 0xfa28]
mov dword [esp + 0x38], edx
mov edx, dword [ebp + 0xfa2c]
mov dword [esp + 0x4c], edx
mov edx, dword [ebp + 0xfa30]
mov dword [esp + 0x58], edx
mov edx, dword [ebp + 0xfa34]
mov dword [esp + 0x34], edx
mov edx, dword [ebp + 0xfa38]
mov dword [esp + 0x40], edx
mov edx, dword [ebp + 0xfa3c]
mov dword [esp + 0x28], edx
mov edx, dword [ebp + 0xfa40]
mov dword [esp + 0x10], edx
mov edx, dword [ebp + 0xfa44]
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0xfa48]
mov dword [esp + 0x54], edx
mov edx, dword [ebp + 0xfa4c]
mov dword [esp + 0x24], edx
mov edx, dword [ebp + 0xfa50]
mov dword [esp + 0x6c], edx
mov edx, dword [ebp + 0xfa54]
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 0xfa58]
mov dword [esp + 0x1c], edx
mov edx, dword [ebp + 0xfa5c]
mov dword [esp + 0x60], edx
mov edx, dword [ebp + 0xfa60]
mov dword [esp + 0x5c], edx
mov edx, dword [ebp + 0xfa64]
mov dword [esp + 0x44], edx
mov edx, dword [ebp + 0xfa68]
mov dword [esp + 0x3c], edx
mov edx, dword [ebp + 0xfa6c]
mov dword [esp + 0x30], edx
mov edx, dword [ebp + 0xfa70]
add ecx, 0xfffffff6
cmp ecx, 0x28
mov dword [esp + 0x2c], edx
ja case.default.0x449126
push ebx
push esi
push edi
mov esi, 1
mov ebx, 0x1d
mov edi, 0x1c
jmp dword [ecx*4 + 0x44b32c]
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xa
jge 0x449185
lea ebx, [ebx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449180
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449140
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x42
je case.0x449126.11
mov eax, 0xffffffce
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xb
jge 0x449205
jmp 0x4491c0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449200
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4491c0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x5a
je case.0x449126.12
mov eax, 0xffffffcd
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xc
jge 0x449285
jmp 0x449240
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449280
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449240
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x68
je case.0x449126.13
mov eax, 0xffffffcc
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xd
jge 0x449305
jmp 0x4492c0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449300
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4492c0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp eax, 0x31
mov dword [ebp + 0x24], eax
jl 0x4493bb
cmp eax, 0x39
jg 0x4493bb
add eax, 0xffffffd0
mov dword [ebp + 0x24], eax
imul eax, eax, 0x186a0
xor ecx, ecx
cmp byte [ebp + 0x28], cl
je 0x449390
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00462aa2
mov dword [ebp + 0xc50], eax
mov eax, dword [ebp + 0x24]
imul eax, eax, 0x186a0
add eax, esi
sar eax, 1
push eax
call fcn.00462aa2
add esp, 8
cmp dword [ebp + 0xc50], 0
mov dword [ebp + 0xc54], eax
je 0x449386
test eax, eax
jne case.0x449126.14
mov eax, 0xfffffffd
jmp 0x44ac14
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00462aa2
add esp, 4
test eax, eax
mov dword [ebp + 0xc4c], eax
jne case.0x449126.14
mov eax, 0xfffffffd
jmp 0x44ac14
mov eax, 0xffffffcb
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xe
jge 0x449417
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449412
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4493d2
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x17
je case.0x449126.42
cmp al, 0x31
je case.0x449126.15
mov eax, 0xfffffff1
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xf
jge 0x449495
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449490
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449450
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x41
je case.0x449126.16
mov eax, 0xfffffff0
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x10
jge 0x449515
jmp 0x4494d0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449510
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4494d0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x59
je case.0x449126.17
mov eax, 0xffffffef
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x11
jge 0x449595
jmp 0x449550
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449590
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449550
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x26
je case.0x449126.18
mov eax, 0xffffffee
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x12
jge 0x449615
jmp 0x4495d0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449610
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4495d0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x53
je case.0x449126.19
mov eax, 0xffffffec
jmp 0x44ac14
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x13
jge 0x449695
jmp 0x449650
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449690
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449650
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x59
je 0x4496b9
mov eax, 0xffffffeb
jmp 0x44ac14
add dword [ebp + 0x2c], esi
mov dword [ebp + 0xc58], 0
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x14
jge 0x449718
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449713
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4496d3
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x15
jge 0x449795
nop
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449790
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449750
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x16
jge 0x449815
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449810
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4497d0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x17
jge 0x449895
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449890
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449850
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x18
jge 0x449911
jmp 0x4498d0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44990c
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x4498d0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
mov dword [ebp + 0x34], 0
and eax, esi
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
mov byte [ebp + 0x10], al
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x19
jge 0x449985
jmp 0x449940
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449980
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449940
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0x34]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x34], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x1a
jge 0x449a05
jmp 0x4499c0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449a00
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x4499c0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0x34]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x34], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x1b
jge 0x449a85
jmp 0x449a40
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449a80
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449a40
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp + 0x1c]
lea ecx, [eax - 8]
shr edx, cl
add eax, 0xfffffff8
mov dword [ebp + 0x20], eax
mov eax, dword [ebp + 0x34]
and edx, 0xff
movzx ecx, dl
shl eax, 8
or eax, ecx
mov dword [ebp + 0x34], eax
jge 0x449ab6
mov eax, 0xffffffea
jmp 0x44ac14
mov edx, dword [ebp + 0x24]
imul edx, edx, 0x186a0
add edx, 0xa
cmp eax, edx
jle 0x449ad0
mov eax, 0xffffffe9
jmp 0x44ac14
mov dword [esp + 0x10], 0
jmp 0x449b4c
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], edi
jge 0x449b23
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449b1e
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x449ae2
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
cmp al, 1
mov eax, dword [esp + 0x10]
sete cl
mov byte [eax + ebp + 0xd6c], cl
add eax, esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], 0x10
jl case.0x449126.28
push 0x100
lea eax, [ebp + 0xc6c]
push 0
push eax
call fcn.00463870
add esp, 0xc
mov dword [esp + 0x10], 0
jmp 0x449c02
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], ebx
jge 0x449bc3
mov ecx, 8
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov edi, dword [eax]
movzx edi, byte [edi]
mov edx, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edx, 8
or edx, edi
mov dword [ebp + 0x1c], edx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449bbe
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x449b83
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
cmp al, 1
jne 0x449bef
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
shl eax, 4
add eax, ebp
mov byte [eax + ecx + 0xc6c], 1
add dword [esp + 0x20], esi
cmp dword [esp + 0x20], 0x10
jl case.0x449126.29
add dword [esp + 0x10], esi
mov eax, dword [esp + 0x10]
cmp eax, 0x10
jge 0x449c1f
cmp byte [eax + ebp + 0xd6c], 0
je 0x449bfe
mov dword [esp + 0x20], 0
jmp 0x449bf3
mov eax, ebp
call fcn.00448f20
mov eax, dword [ebp + 0xc68]
test eax, eax
jne 0x449c3a
mov eax, 0xffffffe8
jmp 0x44ac14
add eax, 2
mov dword [esp + 0x54], eax
mov ecx, 3
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x1e
jge 0x449ca0
mov edx, 8
jmp 0x449c60
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], 0xffffffff
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449c9b
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x449c60
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 3]
shr eax, cl
add edx, 0xfffffffd
mov dword [ebp + 0x20], edx
and eax, 7
cmp eax, 2
mov dword [esp + 0x5c], eax
jl 0x449cc2
cmp eax, 6
jle case.0x449126.31
mov eax, 0xffffffe7
jmp 0x44ac14
cmp dword [ebp + 0x20], 0xf
mov dword [ebp + 4], 0x1f
jge 0x449d21
or edx, 0xffffffff
mov ecx, 8
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449d1b
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], 0xf
jl 0x449ce1
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 0xf]
shr eax, cl
add edx, 0xfffffff1
mov dword [ebp + 0x20], edx
and eax, 0x7fff
cmp eax, esi
mov ebx, eax
mov dword [esp + 0x44], ebx
jge 0x449d4b
mov eax, 0xffffffe6
jmp 0x44ac14
mov dword [esp + 0x10], 0
jmp 0x449ddf
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x20
jge 0x449daf
mov edx, 8
or ecx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449daa
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x449d70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne 0x449df2
mov eax, dword [esp + 0x10]
mov dl, byte [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov byte [eax + ebp + 0x650e], dl
add eax, esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], ebx
jge 0x449e10
mov dword [esp + 0x20], 0
jmp case.0x449126.32
mov eax, dword [esp + 0x20]
add eax, esi
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
jl case.0x449126.32
mov eax, 0xffffffe5
jmp 0x44ac14
mov edx, dword [esp + 0x5c]
xor al, al
test edx, edx
jle 0x449e30
xor ecx, ecx
lea esp, [esp]
mov byte [esp + ecx + 0x80], al
add al, 1
movzx ecx, al
cmp ecx, edx
jl 0x449e20
xor edi, edi
test ebx, ebx
mov dword [esp + 0x10], edi
jle 0x449e87
lea ebx, [ebx]
mov al, byte [edi + ebp + 0x650e]
test al, al
movzx ecx, al
mov dl, byte [esp + ecx + 0x80]
lea ecx, [esp + ecx + 0x80]
jbe 0x449e6d
lea esp, [esp]
mov bl, byte [ecx - 1]
mov byte [ecx], bl
add al, 0xff
sub ecx, esi
test al, al
ja 0x449e60
mov byte [edi + ebp + 0x1ebc], dl
add edi, esi
cmp edi, dword [esp + 0x44]
mov byte [esp + 0x80], dl
jl 0x449e40
mov dword [esp + 0x10], edi
mov dword [esp + 0x2c], 0
jmp 0x449fcd
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x23
jge 0x449eef
mov edx, 8
or ecx, 0xffffffff
jmp 0x449eb0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449eea
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x449eb0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne 0x449f0c
add dword [esp + 0x30], esi
jmp 0x449f10
sub dword [esp + 0x30], esi
mov eax, dword [esp + 0x30]
cmp eax, esi
jl 0x44a259
cmp eax, 0x14
jg 0x44a259
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x22
jge 0x449f7f
mov edx, 8
or ecx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x449f7a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x449f40
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne case.0x449126.35
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
imul ecx, ecx, 0x102
mov dl, byte [esp + 0x30]
add ecx, ebp
mov byte [ecx + eax + 0xab60], dl
add eax, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x54]
jl 0x449f10
add dword [esp + 0x2c], esi
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0x2c], eax
jge 0x44a055
cmp dword [ebp + 0x20], 5
mov dword [ebp + 4], 0x21
jge 0x44a030
mov edx, 8
or ecx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a02a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], 5
jl 0x449ff0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 5]
shr eax, cl
mov dword [esp + 0x10], 0
and eax, 0x1f
add edx, 0xfffffffb
mov dword [ebp + 0x20], edx
mov dword [esp + 0x30], eax
jmp 0x449fbb
test eax, eax
mov dword [esp + 0x2c], 0
jle 0x44a0f2
mov eax, dword [esp + 0x5c]
lea ecx, [ebp + 0xf9fc]
mov dword [esp + 0x58], ecx
lea esi, [ebp + 0xc99c]
lea ebx, [ebp + 0xab60]
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], eax
xor edx, edx
xor ecx, ecx
cmp dword [esp + 0x54], edx
mov edi, 0x20
jle 0x44a0af
movzx eax, byte [ebx + edx]
cmp eax, ecx
jle 0x44a0a0
mov ecx, eax
cmp eax, edi
jge 0x44a0a6
mov edi, eax
add edx, 1
cmp edx, dword [esp + 0x54]
jl 0x44a096
mov edx, dword [esp + 0x54]
push edx
push ecx
push edi
push ebx
lea eax, [esi + 0x1830]
push eax
push esi
lea ecx, [esi - 0x1830]
push ecx
mov ecx, dword [esp + 0x8c]
call fcn.00458d10
mov eax, dword [esp + 0x58]
mov dword [eax], edi
add eax, 4
add ebx, 0x102
add esi, 0x408
sub dword [esp + 0x34], 1
mov dword [esp + 0x58], eax
jne 0x44a087
mov eax, dword [ebp + 0xc68]
add eax, 1
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x24]
imul eax, eax, 0x186a0
mov dword [esp + 0x34], eax
xor esi, esi
xor eax, eax
lea edi, [ebp + 0x40]
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x10], 0x100
mov eax, 0xfff
mov edx, 0xf
lea edi, [ebp + 0x1eb8]
mov bl, dl
shl bl, 4
mov ecx, 0xf
mov byte [esp + 0x17], bl
jmp 0x44a154
mov bl, byte [esp + 0x17]
add bl, cl
mov byte [eax + ebp + 0xe7c], bl
sub eax, 1
sub ecx, 1
jns 0x44a150
lea ecx, [eax + 1]
mov dword [edi], ecx
sub edx, 1
sub edi, 4
cmp edx, esi
jge 0x44a136
cmp dword [esp + 0x44], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x64], esi
jle 0x44ae5a
movzx eax, byte [ebp + 0x1ebc]
mov ecx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov dword [esp + 0x50], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0x31
mov dword [esp + 0x18], ecx
mov esi, 1
mov eax, dword [ebp + 0x20]
cmp eax, dword [esp + 0x18]
mov dword [ebp + 4], 0x24
jge 0x44a233
mov edx, 8
or ecx, 0xffffffff
lea ebx, [ebx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a22a
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x44a1f0
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
mov dword [esp + 0x28], eax
jmp 0x44a2e9
mov eax, 0xffffffe4
jmp 0x44ac14
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x25
jge 0x44a2bf
mov edx, 8
or ecx, 0xffffffff
jmp 0x44a280
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a2ba
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x44a280
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
mov ecx, dword [esp + 0x28]
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
lea edx, [ecx + ecx]
or edx, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x28], edx
mov eax, edx
cmp edi, 0x14
jg 0x44ae64
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jle 0x44a306
add edi, esi
mov dword [esp + 0x18], edi
jmp case.0x449126.37
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x44a31a
cmp eax, 0x102
jl 0x44a3d5
mov eax, 0xfffffff2
jmp 0x44ac14
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x29
jge 0x44a37f
mov edx, 8
or ecx, 0xffffffff
jmp 0x44a340
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a37a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x44a340
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
mov ecx, dword [esp + 0x28]
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
and eax, esi
lea edx, [ecx + ecx]
mov dword [esp + 0x6c], eax
or eax, edx
cmp edi, 0x14
mov dword [esp + 0x28], eax
jg 0x44ae64
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jg 0x44a9d5
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x44a31a
cmp eax, 0x102
jge 0x44a31a
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0x4c], edx
mov ecx, dword [esp + 0x4c]
cmp ecx, dword [esp + 0x58]
je 0x44a9e0
test ecx, ecx
je 0x44a3fa
cmp ecx, esi
jne 0x44a69a
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x60], esi
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x44a418
mov eax, dword [esp + 0x60]
add dword [esp + 0x24], eax
jmp 0x44a42b
cmp eax, esi
jne 0x44a42b
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x60]
lea eax, [ecx + edx*2]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x60]
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x40]
test ecx, ecx
mov dword [esp + 0x60], edx
jne 0x44a493
mov eax, dword [esp + 0x64]
add eax, esi
cmp eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
jge 0x44ae5a
movzx eax, byte [eax + ebp + 0x1ebc]
mov edx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
mov dword [esp + 0x50], edx
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov ecx, 0x32
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x50]
sub ecx, esi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x18], eax
mov ecx, dword [ebp + 0x20]
cmp ecx, dword [esp + 0x18]
mov dword [ebp + 4], 0x26
jge 0x44a503
mov edx, 8
or ecx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a4fa
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x44a4c0
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
cmp edi, 0x14
mov dword [esp + 0x28], eax
jg 0x44ae64
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jle 0x44a5c8
add edi, esi
mov dword [esp + 0x18], edi
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x27
jge 0x44a59f
mov edx, 8
or ecx, 0xffffffff
jmp 0x44a560
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a59a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x44a560
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
add edx, 0xffffffff
mov dword [ebp + 0x20], edx
mov edx, dword [esp + 0x28]
and eax, esi
lea ecx, [edx + edx]
mov dword [esp + 0x6c], eax
or eax, ecx
jmp 0x44a520
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x44a31a
cmp eax, 0x102
jge 0x44a31a
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + eax*4]
test eax, eax
mov dword [esp + 0x4c], eax
je 0x44a406
cmp eax, esi
je 0x44a406
mov eax, dword [ebp + 0x1e7c]
movzx ecx, byte [eax + ebp + 0xe7c]
mov cl, byte [ecx + ebp + 0xd7c]
mov edx, dword [esp + 0x24]
add edx, esi
movzx eax, cl
add dword [ebp + eax*4 + 0x40], edx
cmp byte [ebp + 0x28], 0
mov dword [esp + 0x24], edx
je 0x44a660
test edx, edx
jle 0x44a3e0
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x34]
jge 0x44ae6e
mov ebx, dword [ebp + 0xc50]
movzx di, cl
sub edx, esi
mov word [ebx + eax*2], di
add eax, esi
test edx, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], edx
jg 0x44a633
jmp 0x44a3e0
test edx, edx
jle 0x44a3e0
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
jge 0x44ae78
mov ebx, dword [ebp + 0xc4c]
sub edx, esi
mov dword [ebx + ecx*4], eax
add ecx, esi
test edx, edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x24], edx
jg 0x44a674
jmp 0x44a3e0
mov edx, dword [esp + 0x34]
cmp dword [esp + 0x1c], edx
jge 0x44ae50
add ecx, 0xffffffff
cmp ecx, 0x10
jae 0x44a77e
cmp ecx, 3
mov esi, dword [ebp + 0x1e7c]
lea edx, [esi + ebp]
mov bl, byte [ecx + edx + 0xe7c]
mov dword [esp + 0x80], edx
mov byte [esp + 0x17], bl
jbe 0x44a75c
lea eax, [esi + ecx]
lea edx, [ebp + 0xe7b]
mov esi, ebp
sub esi, edx
add esi, 0xe7c
mov dword [esp + 0x70], esi
mov esi, ebp
sub esi, edx
lea edi, [esi + 0xe7a]
mov esi, ebp
sub esi, edx
add esi, 0xe78
mov dword [esp + 0x7c], esi
mov esi, ebp
sub esi, edx
add esi, 0xe79
mov dword [esp + 0x74], esi
lea esi, [ecx - 4]
shr esi, 2
add eax, edx
add esi, 1
movzx edx, byte [eax]
mov ebx, dword [esp + 0x70]
mov byte [ebx + eax], dl
movzx edx, byte [edi + eax]
mov byte [eax], dl
mov edx, dword [esp + 0x74]
movzx ebx, byte [edx + eax]
mov byte [edi + eax], bl
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [ebx + eax]
mov byte [edx + eax], bl
sub ecx, 4
sub eax, 4
sub esi, 1
jne 0x44a720
mov edx, dword [esp + 0x80]
mov bl, byte [esp + 0x17]
test ecx, ecx
jbe 0x44a773
sub ecx, 1
mov al, byte [ecx + edx + 0xe7c]
mov byte [ecx + edx + 0xe7d], al
jne 0x44a760
mov byte [edx + 0xe7c], bl
jmp 0x44a89d
mov edx, ecx
shr edx, 4
mov edi, dword [ebp + edx*4 + 0x1e7c]
lea esi, [ebp + edx*4 + 0x1e7c]
and ecx, 0xf
add ecx, edi
cmp ecx, edi
mov bl, byte [ecx + ebp + 0xe7c]
mov byte [esp + 0x17], bl
jle 0x44a7c5
jmp 0x44a7b0
mov al, byte [ecx + ebp + 0xe7b]
mov byte [ecx + ebp + 0xe7c], al
sub ecx, 1
cmp ecx, dword [esi]
jg 0x44a7b0
add dword [esi], 1
test edx, edx
jle 0x44a7f0
mov eax, esi
mov edi, edi
add dword [eax], 0xffffffff
mov ecx, dword [eax - 4]
mov esi, dword [eax]
mov cl, byte [ecx + ebp + 0xe8b]
sub edx, 1
sub eax, 4
test edx, edx
mov byte [esi + ebp + 0xe7c], cl
jg 0x44a7d0
add dword [ebp + 0x1e7c], 0xffffffff
mov eax, dword [ebp + 0x1e7c]
mov byte [eax + ebp + 0xe7c], bl
cmp dword [ebp + 0x1e7c], 0
jne 0x44a89d
mov ecx, 0xfff
mov edi, 0xf
lea esi, [ebp + 0x1eb8]
mov eax, 0xf
jmp 0x44a830
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7c]
mov byte [ecx + ebp + 0xe7c], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7b]
mov byte [ecx + ebp + 0xe7b], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7a]
mov byte [ecx + ebp + 0xe7a], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe79]
mov byte [ecx + ebp + 0xe79], dl
sub eax, 4
sub ecx, 4
test eax, eax
jge 0x44a830
lea eax, [ecx + 1]
mov dword [esi], eax
sub edi, 1
sub esi, 4
test edi, edi
jge 0x44a821
mov bl, byte [esp + 0x17]
movzx ecx, bl
movzx edx, byte [ecx + ebp + 0xd7c]
add dword [ebp + edx*4 + 0x40], 1
cmp byte [ebp + 0x28], 0
lea eax, [ecx + ebp + 0xd7c]
lea ecx, [ebp + edx*4 + 0x40]
mov edx, dword [esp + 0x1c]
je 0x44a8d2
movzx ax, byte [eax]
mov ecx, dword [ebp + 0xc50]
mov word [ecx + edx*2], ax
jmp 0x44a8de
movzx eax, byte [eax]
mov ecx, dword [ebp + 0xc4c]
mov dword [ecx + edx*4], eax
mov ecx, dword [esp + 0x40]
add dword [esp + 0x1c], 1
test ecx, ecx
jne 0x44a941
mov eax, dword [esp + 0x64]
add eax, 1
cmp eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
jge 0x44ae5a
movzx eax, byte [eax + ebp + 0x1ebc]
mov edx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
mov dword [esp + 0x50], edx
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov ecx, 0x32
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x50]
sub ecx, 1
mov dword [esp + 0x40], ecx
mov dword [esp + 0x18], eax
mov esi, 1
mov ecx, dword [ebp + 0x20]
cmp ecx, dword [esp + 0x18]
mov dword [ebp + 4], 0x28
jge 0x44a9b3
mov edx, 8
or ecx, 0xffffffff
lea ecx, [ecx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44a9aa
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x44a970
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
jmp 0x44a3a3
add edi, esi
mov dword [esp + 0x18], edi
jmp case.0x449126.41
mov eax, dword [ebp + 0x34]
test eax, eax
jl 0x44ae46
cmp eax, dword [esp + 0x1c]
jge 0x44ae46
xor ebx, ebx
lea eax, [ebp + 0x448]
lea edx, [ebp + 0x444]
lea esi, [ebp + 0x40]
mov ecx, 0x100
mov edi, eax
mov dword [ebp + 0xc], ebx
mov byte [ebp + 8], bl
mov dword [ebp + 0xc60], 0xffffffff
mov dword [ebp + 4], 2
mov dword [edx], ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x100
lea ecx, [ecx]
mov esi, dword [eax - 4]
add dword [eax], esi
add eax, 4
sub ecx, 1
jne 0x44aa30
cmp byte [ebp + 0x28], 0
je 0x44ad80
lea edi, [ebp + 0x848]
mov ecx, 0x101
mov esi, edx
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
cmp dword [esp + 0x1c], ebx
jle 0x44aab9
mov edi, edi
mov edx, dword [ebp + 0xc50]
movzx eax, byte [edx + ecx*2]
mov si, word [ebp + eax*4 + 0x848]
lea edx, [edx + ecx*2]
lea eax, [ebp + eax*4 + 0x848]
mov word [edx], si
mov esi, dword [ebp + 0xc54]
mov edx, ecx
sar edx, 1
add esi, edx
test cl, 1
jne 0x44aa9a
mov dl, byte [esi]
and dl, 0xf0
or dl, byte [eax + 2]
jmp 0x44aaab
mov edx, dword [eax]
mov ebx, dword [eax]
sar edx, 0xc
xor dl, byte [esi]
sar ebx, 0xc
and dl, 0xf
xor dl, bl
mov byte [esi], dl
add dword [eax], 1
add ecx, 1
cmp ecx, dword [esp + 0x1c]
jl 0x44aa60
mov eax, dword [ebp + 0x34]
mov edx, dword [ebp + 0xc54]
mov ecx, eax
sar ecx, 1
movzx ebx, byte [ecx + edx]
movzx ecx, al
and cl, 1
add cl, cl
add cl, cl
shr ebx, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + eax*2]
and ebx, 0xf
shl ebx, 0x10
mov dword [esp + 0x10], eax
or ebx, edx
jmp 0x44aaf4
mov ebx, dword [esp + 0x20]
mov eax, dword [ebp + 0xc50]
mov ecx, dword [ebp + 0xc54]
lea esi, [eax + ebx*2]
mov edx, ebx
sar edx, 1
movzx eax, byte [ecx + edx]
movzx ecx, bl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
movzx ecx, word [esi]
and eax, 0xf
shl eax, 0x10
or eax, ecx
test bl, 1
mov cx, word [esp + 0x10]
mov word [esi], cx
mov ecx, dword [ebp + 0xc54]
lea esi, [ecx + edx]
mov ecx, dword [esp + 0x10]
jne 0x44ab4a
mov dl, byte [esi]
sar ecx, 0x10
and dl, 0xf0
or cl, dl
mov byte [esi], cl
jmp 0x44ab5b
mov edx, ecx
sar edx, 0xc
xor dl, byte [esi]
sar ecx, 0xc
and dl, 0xf
xor dl, cl
mov byte [esi], dl
cmp ebx, dword [ebp + 0x34]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x20], eax
jne 0x44aaf0
mov edx, dword [ebp + 0x34]
xor ebx, ebx
cmp byte [ebp + 0x10], bl
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x440], ebx
je 0x44ad19
mov dword [ebp + 0x14], ebx
mov dword [ebp + 0x18], ebx
xor esi, esi
mov ecx, 0x100
mov edi, 1
lea eax, [ecx + esi]
sar eax, 1
cmp edx, dword [ebp + eax*4 + 0x444]
jl 0x44aba3
mov esi, eax
jmp 0x44aba5
mov ecx, eax
mov eax, ecx
sub eax, esi
cmp eax, edi
jne 0x44ab91
mov eax, dword [ebp + 0xc54]
mov ecx, edx
shr ecx, 1
mov dword [ebp + 0x3c], esi
movzx eax, byte [ecx + eax]
movzx ecx, dl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + edx*2]
and eax, 0xf
shl eax, 0x10
or eax, edx
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x440], edi
mov eax, dword [0x532060]
mov ecx, edi
cmp ecx, 0x200
mov dword [ebp + 0x14], eax
mov dword [ebp + 0x18], edi
jne 0x44abfd
mov dword [ebp + 0x18], ebx
add dword [ebp + 0x14], 0xffffffff
mov eax, dword [ebp + 0x14]
xor edx, edx
cmp eax, edi
sete dl
xor edx, esi
mov dword [ebp + 0x3c], edx
xor ebx, ebx
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x14]
mov dword [ebp + 0xfa14], ecx
mov ecx, dword [esp + 0x20]
mov dword [ebp + 0xfa18], edx
mov edx, dword [esp + 0x48]
mov dword [ebp + 0xfa1c], ecx
mov ecx, dword [esp + 0x50]
mov dword [ebp + 0xfa20], edx
mov edx, dword [esp + 0x38]
mov dword [ebp + 0xfa24], ecx
mov ecx, dword [esp + 0x4c]
mov dword [ebp + 0xfa28], edx
mov edx, dword [esp + 0x58]
mov dword [ebp + 0xfa2c], ecx
mov ecx, dword [esp + 0x34]
mov dword [ebp + 0xfa30], edx
mov edx, dword [esp + 0x40]
mov dword [ebp + 0xfa34], ecx
mov ecx, dword [esp + 0x28]
mov dword [ebp + 0xfa38], edx
mov edx, dword [esp + 0x10]
mov dword [ebp + 0xfa3c], ecx
mov ecx, dword [esp + 0x18]
mov dword [ebp + 0xfa40], edx
mov edx, dword [esp + 0x54]
mov dword [ebp + 0xfa44], ecx
mov ecx, dword [esp + 0x24]
mov dword [ebp + 0xfa48], edx
mov edx, dword [esp + 0x6c]
mov dword [ebp + 0xfa4c], ecx
mov ecx, dword [esp + 0xc]
mov dword [ebp + 0xfa50], edx
mov edx, dword [esp + 0x1c]
mov dword [ebp + 0xfa54], ecx
mov ecx, dword [esp + 0x60]
mov dword [ebp + 0xfa58], edx
mov edx, dword [esp + 0x5c]
mov dword [ebp + 0xfa5c], ecx
mov ecx, dword [esp + 0x44]
mov dword [ebp + 0xfa60], edx
mov edx, dword [esp + 0x3c]
mov dword [ebp + 0xfa64], ecx
mov ecx, dword [esp + 0x30]
mov dword [ebp + 0xfa68], edx
mov edx, dword [esp + 0x2c]
mov dword [ebp + 0xfa6c], ecx
mov ecx, dword [esp + 0x7c]
mov dword [ebp + 0xfa70], edx
pop ebp
xor ecx, esp
call fcn.0046255c
add esp, 0x7c
ret 4
xor ecx, ecx
mov esi, 0x100
lea eax, [esi + ecx]
sar eax, 1
cmp edx, dword [ebp + eax*4 + 0x444]
jl 0x44ad32
mov ecx, eax
jmp 0x44ad34
mov esi, eax
mov eax, esi
sub eax, ecx
cmp eax, 1
jne 0x44ad20
mov eax, dword [ebp + 0xc54]
mov dword [ebp + 0x3c], ecx
mov ecx, edx
shr ecx, 1
movzx eax, byte [ecx + eax]
movzx ecx, dl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + edx*2]
and eax, 0xf
shl eax, 0x10
or eax, edx
mov dword [ebp + 0x38], eax
xor ebx, ebx
mov dword [ebp + 0x440], 1
jmp 0x44ac12
mov esi, dword [esp + 0x1c]
xor edx, edx
cmp esi, ebx
mov dword [esp + 0x10], edx
jle 0x44adc0
mov edi, edi
mov ecx, dword [ebp + 0xc4c]
movzx eax, byte [ecx + edx*4]
mov edi, dword [ebp + eax*4 + 0x444]
lea eax, [ebp + eax*4 + 0x444]
lea ecx, [ecx + edi*4]
mov edi, edx
shl edi, 8
or dword [ecx], edi
add dword [eax], 1
add edx, 1
cmp edx, esi
jl 0x44ad90
mov dword [esp + 0x10], edx
mov ecx, dword [ebp + 0x34]
mov eax, dword [ebp + 0xc4c]
mov edx, dword [eax + ecx*4]
shr edx, 8
cmp byte [ebp + 0x10], 0
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x440], ebx
mov ecx, edx
je 0x44ae27
mov dword [ebp + 0x14], ebx
mov dword [ebp + 0x18], ebx
mov edx, dword [eax + ecx*4]
movzx eax, dl
mov dword [ebp + 0x38], edx
shr dword [ebp + 0x38], 8
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x440], 1
mov ecx, dword [0x532060]
mov dword [ebp + 0x14], ecx
add dword [ebp + 0x14], 0xffffffff
mov eax, dword [ebp + 0x14]
xor edx, edx
cmp eax, 1
sete dl
mov dword [ebp + 0x18], 1
xor dword [ebp + 0x3c], edx
jmp 0x44ac12
mov edx, dword [eax + ecx*4]
movzx eax, dl
mov dword [ebp + 0x38], edx
shr dword [ebp + 0x38], 8
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x440], 1
jmp 0x44ac12
mov eax, 0xffffffe0
jmp 0x44ac14
mov eax, 0xffffffe1
jmp 0x44ac14
mov eax, 0xfffffff4
jmp 0x44ac14
mov eax, 0xfffffff3
jmp 0x44ac14
mov eax, 0xffffffe3
jmp 0x44ac14
mov eax, 0xffffffe2
jmp 0x44ac14
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2a
jge 0x44aedf
or edx, 0xffffffff
jmp 0x44aea0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44aeda
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44aea0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x72
je case.0x449126.43
mov eax, 0xffffffdf
jmp 0x44ac14
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2b
jge 0x44af5f
or edx, 0xffffffff
jmp 0x44af20
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44af5a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44af20
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x45
je case.0x449126.44
mov eax, 0xffffffde
jmp 0x44ac14
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2c
jge 0x44afdf
or edx, 0xffffffff
jmp 0x44afa0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44afda
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44afa0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x38
je case.0x449126.45
mov eax, 0xffffffdd
jmp 0x44ac14
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2d
jge 0x44b05f
or edx, 0xffffffff
jmp 0x44b020
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b05a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b020
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x50
je case.0x449126.46
mov eax, 0xffffffdc
jmp 0x44ac14
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2e
jge 0x44b0e3
or edx, 0xffffffff
jmp 0x44b0a0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b0de
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b0a0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x90
je 0x44b107
mov eax, 0xffffffdb
jmp 0x44ac14
mov dword [ebp + 0xc5c], 0
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2f
jge 0x44b173
or edx, 0xffffffff
jmp 0x44b130
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b16e
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b130
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x30
jge 0x44b1f4
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b1ef
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b1b1
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x31
jge 0x44b275
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b270
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b232
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x32
jge 0x44b2f2
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x44ac12
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x44b2ed
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x44b2b3
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov dword [ebp + 4], esi
mov eax, 4
jmp 0x44ac14