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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x84]
cmp eax, dword [ecx + 8]
jbe 0x624ff4
sub esp, 0x104
mov eax, dword [esp + 0x110]
test eax, eax
jne 0x622b46
mov eax, dword [esp + 0x118]
mov dword [esp], eax
mov eax, dword [esp + 0x11c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x622a94
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x622b29
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x622b21
mov dword [edx + 0x40], eax
jmp 0x622b29
lea edi, [edx + 0x40]
call fcn.0045f750
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
add esp, 0x104
ret
mov eax, dword [esp + 0x10c]
cmp byte [eax], 0x6e
mov ecx, dword [esp + 0x118]
mov dword [esp], ecx
mov edx, dword [esp + 0x11c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x120]
mov dword [esp + 8], ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg ebp, eax
mov byte [esp + 0xc], al
xchg ebp, eax
call fcn.0061fa00
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
test ebx, ebx
jne 0x624f60
test esi, esi
je 0x62304d
mov eax, dword [esp + 0x10c]
movzx ecx, byte [eax]
cmp cl, 0x22
je 0x622eaa
movzx edx, byte [esp + 0x124]
test dl, dl
jne 0x622d46
cmp cl, 0x66
je 0x622bed
cmp cl, 0x6e
jne 0x622be8
lea eax, [0x68ce82]
mov ecx, 4
jmp 0x622c05
cmp cl, 0x74
jne 0x622bfa
lea eax, [0x68cdfe]
mov ecx, 4
jmp 0x622c05
lea eax, [0x68d3cf]
mov ecx, 6
mov dword [esp + 0x34], ecx
mov dword [esp + 0xa4], eax
mov edx, dword [esp + 0x118]
mov dword [esp], edx
mov edx, dword [esp + 0x11c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x120]
mov dword [esp + 8], edx
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x34]
mov dword [edi + 4], eax
mov eax, dword [0x887d70]
test eax, eax
jne 0x622c8a
mov ecx, dword [esp + 0xa4]
mov dword [edi], ecx
jmp 0x622c96
mov eax, dword [esp + 0xa4]
call fcn.0045f750
mov ecx, dword [esp + 0xc8]
mov dword [edi + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x622cb6
mov eax, dword [esp + 0xcc]
mov dword [edi + 0xc], eax
jmp 0x622ccb
lea ecx, [edi + 0xc]
mov eax, dword [esp + 0xcc]
mov edx, edi
mov edi, ecx
call fcn.0045f750
mov edi, edx
mov eax, dword [esp + 0x80]
dec eax
mov dword [edi + 0x10], eax
sar eax, 0x1f
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x108]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x622d29
mov dword [esp], eax
lea ecx, [0x6f6534]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x622d21
mov dword [edx + 0x40], eax
jmp 0x622d29
lea edi, [edx + 0x40]
call fcn.0045f750
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
add esp, 0x104
ret
mov eax, dword [esp + 0x118]
mov dword [esp], eax
mov eax, dword [esp + 0x11c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x622df8
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x622e8d
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x622e85
mov dword [edx + 0x40], eax
jmp 0x622e8d
lea edi, [edx + 0x40]
call fcn.0045f750
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
add esp, 0x104
ret
mov dword [esp + 0xa8], edi
mov dword [esp + 0x38], esi
mov dword [esp], eax
mov ecx, dword [esp + 0x110]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.006257b0
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test al, al
jne 0x623011
movzx eax, byte [esp + 0x124]
test al, al
je 0x624fdb
mov eax, dword [esp + 0x118]
mov dword [esp], eax
mov eax, dword [esp + 0x11c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x622fae
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x10]
mov ebp, dword [esp + 0xa8]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc0], eax
mov dword [esp + 0x60], ecx
mov ebx, dword [esp + 0x10c]
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x66
xchg ebp, eax
ja 0x623936
xchg ebp, eax
cmp al, 0x22
xchg ebp, eax
je 0x62308b
xchg ebp, eax
cmp al, 0x66
xchg ebp, eax
je 0x623b2a
jmp 0x62411b
mov dword [esp], ebx
mov eax, dword [esp + 0x110]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x114]
mov dword [esp + 8], ecx
call fcn.006257b0
mov eax, dword [esp + 0xc]
movzx ecx, byte [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test cl, cl
je 0x623814
mov dword [esp + 0x5c], edx
mov dword [esp + 0xb0], eax
nop
nop
mov ecx, dword [esp + 0x60]
mov ebp, ecx
and ecx, 0x1f
cmp ecx, 0x14
je 0x623606
cmp ecx, 0x17
je 0x623374
cmp ecx, 0x18
jne 0x623271
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov ecx, dword [0x860344]
mov edx, dword [esp + 0x10]
cmp dword [0x860340], eax
je 0x62312b
xor eax, eax
jmp 0x623186
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00403430
movzx eax, byte [esp + 0xc]
test al, al
jne 0x623148
xor eax, eax
jmp 0x623186
lea eax, [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 8], ecx
call fcn.0044bc00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00628300
movzx eax, byte [esp + 8]
xor eax, 1
test al, al
jne 0x6231d0
mov dword [esp], 0
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
call fcn.0044bc00
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fa80
jmp 0x624f43
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov eax, dword [esp + 0x10c]
mov dword [esp], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x114]
mov dword [esp + 8], eax
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xec], ecx
mov dword [esp + 0xf0], eax
lea eax, [0x69fa3a]
mov dword [esp], eax
mov dword [esp + 4], 0x40
lea eax, [esp + 0xec]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x68d41d]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6232f7
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x62330a
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623367
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
cmp dword [esp + 4], 8
jne 0x6234ff
mov eax, dword [0x85fc9c]
cmp dword [eax + 0x140], 0xffffffff
jne 0x6233e9
mov eax, dword [esp + 0x5c]
lea ecx, [eax + eax*2]
mov edx, ecx
shl ecx, 1
sar ecx, 0x1f
shr ecx, 0x1d
lea ecx, [ecx + edx*2]
sar ecx, 3
jmp 0x6233f3
mov eax, dword [esp + 0x5c]
shr eax, 2
lea ecx, [eax + eax*2]
mov dword [esp + 0x30], ecx
lea eax, [0x659160]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004483a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xbc], eax
mov ecx, dword [0x85fc9c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0xb0]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x18], edx
call fcn.005738f0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x6234b9
nop
mov ecx, dword [esp + 0x108]
mov ebx, dword [ecx + 0x3c]
test ebx, ebx
jne 0x624f43
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6234ac
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov edx, dword [esp + 0x30]
cmp edx, ecx
jb 0x624fd6
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.0048f0a0
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x68d41d]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623589
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x62359c
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6235f9
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.0048ebe0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x62370d
mov dword [esp], 0
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
call fcn.0044bc00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00408e30
mov eax, dword [esp + 8]
nop
movzx ecx, byte [0x860a48]
test cl, cl
je 0x62369e
lea ecx, [0x658f60]
mov dword [0x860a4c], ecx
mov edx, dword [0x887d70]
test edx, edx
jne 0x623691
mov dword [0x860a50], eax
jmp 0x6236a4
lea edi, [0x860a50]
call fcn.0045f750
jmp 0x6236a4
lea ecx, [0x658f60]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], eax
mov ecx, dword [esp + 0xdc]
test ecx, ecx
je 0x6236d4
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x6236da
or edx, 0x80
jmp 0x6236da
xor edx, edx
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0xc0]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.0048eed0
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x68d41d]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623797
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x6237aa
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623807
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
movzx eax, byte [esp + 0x124]
test al, al
je 0x624fbe
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x6238d3
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
xchg ebp, eax
cmp al, 0x6e
xchg ebp, eax
jne 0x623b1f
movzx ebp, byte [esp + 0x124]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x623aa9
mov ebp, dword [esp + 0x110]
cmp ebp, 4
jne 0x62396b
cmp dword [ebx], 0x6c6c756e
je 0x623aa9
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x623a08
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x624f43
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623a9c
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
nop
mov ebx, ecx
and ecx, 0x1f
add ecx, 0xffffffec
nop
cmp ecx, 3
ja 0x624f43
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00490810
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc0]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.0048eed0
jmp 0x624f43
xchg ebp, eax
cmp al, 0x74
xchg ebp, eax
jne 0x62411b
movzx esi, byte [esp + 0x124]
xchg esi, eax
test al, al
xchg esi, eax
je 0x623ca9
mov edi, dword [esp + 0x110]
cmp edi, 4
jne 0x623b54
cmp dword [ebx], 0x65757274
je 0x623cb0
cmp edi, 5
jne 0x623b6b
cmp dword [ebx], 0x736c6166
jne 0x623b6b
cmp byte [ebx + 4], 0x65
je 0x623cb0
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x623c08
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x624f43
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623c9c
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov edi, dword [esp + 0x110]
xchg ebp, eax
cmp al, 0x74
xchg ebp, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
nop
nop
and ecx, 0x1f
cmp ecx, 1
je 0x6240fc
cmp ecx, 0x14
je 0x623f18
xchg esi, eax
test al, al
xchg esi, eax
je 0x623e1f
mov dword [esp], eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x623d7e
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x624f43
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623e12
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov dword [esp], eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 4
lea ecx, [0x68cdfe]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623e9b
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x623eae
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x623f0b
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
xchg ebp, eax
mov byte [esp + 0x2f], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
call fcn.0048ebe0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x623ff5
movzx ecx, byte [esp + 0x2f]
movzx ecx, cl
lea edx, [0x83bd20]
lea eax, [edx + ecx*8]
nop
movzx ecx, byte [0x860a48]
test cl, cl
je 0x623f86
lea ecx, [0x6579a0]
mov dword [0x860a4c], ecx
mov edx, dword [0x887d70]
test edx, edx
jne 0x623f79
mov dword [0x860a50], eax
jmp 0x623f8c
lea edi, [0x860a50]
call fcn.0045f750
jmp 0x623f8c
lea ecx, [0x6579a0]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0xe4]
test ecx, ecx
je 0x623fbc
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x623fc2
or edx, 0x80
jmp 0x623fc2
xor edx, edx
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0xc0]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.0048eed0
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 4
lea ecx, [0x68cdfe]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x62407f
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x624092
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6240ef
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov dword [esp], eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
xchg ebp, eax
mov byte [esp + 0xc], al
xchg ebp, eax
call fcn.0048efe0
jmp 0x624f43
xchg ebp, eax
cmp al, 0x2d
xchg ebp, eax
je 0x624246
add ebp, 0xffffffd0
xchg ebp, eax
cmp al, 9
xchg ebp, eax
jbe 0x624246
movzx ebp, byte [esp + 0x124]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x624fa6
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x6241e3
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
mov dword [esp], 0
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x110]
mov dword [esp + 8], eax
call fcn.0044bc00
mov eax, dword [esp + 0xc]
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
nop
mov edx, dword [esp + 0x60]
mov ebx, edx
and edx, 0x1f
cmp edx, 0xc
ja 0x6247c2
lea ebp, [edx - 2]
cmp ebp, 4
jbe 0x624509
cmp edx, 7
jb 0x6247d4
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.0047b750
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x624383
mov dword [esp + 0x54], eax
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0xc0]
mov ebx, dword [edx]
shl ebx, 3
add ebx, 0xffffffc0
neg ebx
lea ebp, [ebx - 0x20]
mov dword [esp + 0x7c], ebp
cmp ebp, 0x20
sbb esi, esi
mov dword [esp + 0x78], esi
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x74], ebp
cmp ebp, 0x20
sbb edx, edx
mov dword [esp + 0x70], edx
cmp ebx, 0x20
sbb edx, edx
mov ecx, edi
mov ebp, dword [esp + 0x48]
shl ebp, cl
and ebp, esi
mov ecx, ebx
shl eax, cl
and eax, edx
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x48]
shr esi, cl
mov edi, dword [esp + 0x70]
and esi, edi
or eax, esi
or eax, ebp
mov ebp, ecx
mov ecx, ebx
mov esi, dword [esp + 0x48]
shl esi, cl
and esi, edx
shr esi, cl
and esi, edx
mov ecx, ebp
mov ebp, eax
shl eax, cl
and eax, edi
or esi, eax
mov ecx, dword [esp + 0x7c]
mov eax, ebp
shr ebp, cl
mov edi, dword [esp + 0x78]
and ebp, edi
or esi, ebp
mov ebp, dword [esp + 0x48]
cmp ebp, esi
xchg esi, ebx
setne bl
xchg esi, ebx
mov ecx, ebx
shr eax, cl
and eax, edx
mov edx, dword [esp + 0x54]
cmp edx, eax
setne al
or eax, esi
test al, al
je 0x6244da
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [esp + 0xb8], eax
mov dword [esp], 0
lea ecx, [0x68d7bc]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x10], ecx
call fcn.0044b950
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0xb8]
mov dword [edi + 4], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624436
mov dword [edi], eax
jmp 0x62443b
call fcn.0045f750
mov ecx, dword [esp + 0xc8]
mov dword [edi + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x62445b
mov eax, dword [esp + 0xcc]
mov dword [edi + 0xc], eax
jmp 0x624470
lea ecx, [edi + 0xc]
mov eax, dword [esp + 0xcc]
mov edx, edi
mov edi, ecx
call fcn.0045f750
mov edi, edx
mov eax, dword [esp + 0x80]
dec eax
mov dword [edi + 0x10], eax
sar eax, 0x1f
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x108]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x624f43
mov dword [esp], eax
lea ecx, [0x6f6534]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6244cd
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ebp
call fcn.0048f980
jmp 0x624f43
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.0047bf30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
test edx, edx
jne 0x624638
mov dword [esp + 0x58], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ebx
mov edx, dword [esp + 0xc0]
mov ebp, dword [edx]
shl ebp, 3
add ebp, 0xffffffc0
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x6c], ebp
lea esi, [ebp - 0x20]
mov dword [esp + 0x7c], esi
cmp esi, 0x20
sbb edi, edi
mov dword [esp + 0x78], edi
cmp ebp, 0x20
sbb eax, eax
mov dword [esp + 0x74], eax
xchg esi, ebx
neg ebx
xchg esi, ebx
cmp esi, 0x20
sbb edx, edx
mov dword [esp + 0x70], edx
shr ebp, 5
cmp ebp, 1
sbb ebp, ebp
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x6c]
cmp ebp, 0x20
sbb edx, edx
mov dword [esp + 0x6c], edx
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x4c]
shl edx, cl
and edx, edi
mov ecx, ebp
shl ebx, cl
and ebx, eax
mov ecx, esi
mov edi, dword [esp + 0x4c]
shr edi, cl
mov esi, dword [esp + 0x70]
and edi, esi
or ebx, edi
or ebx, edx
mov edx, ecx
mov ecx, ebp
mov edi, dword [esp + 0x4c]
shl edi, cl
and edi, eax
mov eax, dword [esp + 0x78]
not eax
mov ebp, dword [esp + 0x7c]
or eax, ebp
mov ebp, ecx
mov ecx, eax
mov eax, ebx
sar ebx, cl
mov ecx, ebp
mov ebp, dword [esp + 0x68]
xor ebp, 0xffffffff
and ebp, ebx
mov ebx, ecx
mov ecx, edx
mov edx, eax
shl eax, cl
and eax, esi
mov ecx, ebx
shr edi, cl
mov esi, dword [esp + 0x74]
and edi, esi
or edi, eax
or ebp, edi
mov eax, dword [esp + 0x4c]
cmp eax, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov esi, dword [esp + 0x6c]
xchg esi, ebx
not ebx
xchg esi, ebx
or ecx, esi
sar edx, cl
mov ebx, dword [esp + 0x50]
cmp ebx, edx
setne dl
or edx, ebp
test dl, dl
je 0x62478f
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [esp + 0xb8], eax
mov dword [esp], 0
lea ecx, [0x68d7bc]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x10], ecx
call fcn.0044b950
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0xb8]
mov dword [edi + 4], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6246eb
mov dword [edi], eax
jmp 0x6246f0
call fcn.0045f750
mov ecx, dword [esp + 0xc8]
mov dword [edi + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624710
mov eax, dword [esp + 0xcc]
mov dword [edi + 0xc], eax
jmp 0x624725
lea ecx, [edi + 0xc]
mov eax, dword [esp + 0xcc]
mov edx, edi
mov edi, ecx
call fcn.0045f750
mov edi, edx
mov eax, dword [esp + 0x80]
dec eax
mov dword [edi + 0x10], eax
sar eax, 0x1f
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x108]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x624f43
mov dword [esp], eax
lea ecx, [0x6f6534]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624782
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov ecx, dword [esp + 0xc0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
call fcn.0048f3a0
jmp 0x624f43
cmp edx, 0xe
jbe 0x624d2e
cmp edx, 0x14
je 0x624a8f
cmp edx, 0x18
je 0x6247dd
xor edx, edx
jmp 0x62483b
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov ecx, dword [0x860344]
mov edx, dword [esp + 0x10]
cmp dword [0x860340], eax
je 0x624815
xor eax, eax
jmp 0x62482a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00403430
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x60]
mov edx, eax
mov eax, dword [esp + 0xac]
test dl, dl
jne 0x624a64
movzx eax, byte [esp + 0x124]
test al, al
je 0x624961
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov edx, dword [esp + 0x10c]
mov dword [esp], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 8], edx
call fcn.00408eb0
mov eax, dword [esp + 0xc]
lea ecx, [0x651b00]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x6248fe
mov eax, dword [eax + 4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x100], eax
lea eax, [0x6a0114]
mov dword [esp], eax
mov dword [esp + 4], 0x47
lea eax, [esp + 0xf4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c11e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x68d3cf]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x6249e7
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x6249fa
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624a57
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov edx, dword [esp + 0xc0]
mov dword [esp], edx
mov edx, dword [esp + 0xc4]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0048fa80
jmp 0x624f43
mov edx, dword [esp + 0x108]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.006227e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
test edx, edx
je 0x624b16
nop
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x624f43
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624b09
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov dword [esp + 0xcc], ebp
mov dword [esp + 0xb4], esi
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x60]
mov dword [esp + 8], edx
call fcn.0048ebe0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x624c27
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x624bee
nop
movzx ecx, byte [0x860a48]
test cl, cl
je 0x624ba8
mov ecx, dword [esp + 0xcc]
mov dword [0x860a4c], ecx
mov edx, dword [0x887d70]
test edx, edx
jne 0x624b94
mov eax, dword [esp + 0xb4]
mov dword [0x860a50], eax
jmp 0x624bb6
lea edi, [0x860a50]
mov eax, dword [esp + 0xb4]
call fcn.0045f750
jmp 0x624bb6
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0xd4]
test ecx, ecx
je 0x624be6
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x624bf4
or edx, 0x80
jmp 0x624bf4
xor edx, edx
xor ecx, ecx
xor eax, eax
jmp 0x624bf4
xor edx, edx
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0xc0]
mov dword [esp], ebx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.0048eed0
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x68d3cf]
mov dword [eax], ecx
mov ecx, dword [esp + 0xc8]
mov dword [eax + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624cb1
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x624cc4
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045f750
mov eax, ecx
mov ecx, dword [esp + 0x80]
dec ecx
mov dword [eax + 0x10], ecx
sar ecx, 0x1f
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x108]
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x624f43
mov dword [esp], ecx
lea edx, [0x6f6534]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624d21
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov dword [esp + 0x64], edx
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.0048fe90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0047b080
movsd xmm0, qword [esp + 0xc]
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x624dd4
mov eax, dword [esp + 0x64]
cmp eax, 0xd
jne 0x624f21
nop
xorps xmm1, xmm1
ucomisd xmm1, xmm0
jbe 0x624db0
movsd xmm1, qword [0x6f5cb4]
pxor xmm0, xmm1
movsd xmm1, qword [0x6f5c9c]
ucomisd xmm0, xmm1
jbe 0x624f21
movsd xmm1, qword [0x6f5ca4]
ucomisd xmm1, xmm0
jb 0x624f21
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048fe90
mov eax, dword [esp + 0x10]
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc8], ecx
mov edx, dword [esp + 0x108]
mov ebx, dword [edx + 0xc]
mov dword [esp + 0x80], ebx
lea ebp, [0x675960]
mov dword [esp], ebp
call fcn.0040b470
mov eax, dword [esp + 4]
mov dword [esp + 0xb8], eax
mov dword [esp], 0
lea ecx, [0x68d7bc]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x10], ecx
call fcn.0044b950
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0xb8]
mov dword [edi + 4], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624e87
mov dword [edi], eax
jmp 0x624e8c
call fcn.0045f750
mov ecx, dword [esp + 0xc8]
mov dword [edi + 8], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624eac
mov eax, dword [esp + 0xcc]
mov dword [edi + 0xc], eax
jmp 0x624ec1
lea ecx, [edi + 0xc]
mov eax, dword [esp + 0xcc]
mov edx, edi
mov edi, ecx
call fcn.0045f750
mov edi, edx
mov eax, dword [esp + 0x80]
dec eax
mov dword [edi + 0x10], eax
sar eax, 0x1f
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x108]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x624f43
mov dword [esp], eax
lea ecx, [0x6f6534]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.0061f320
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x108]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x887d70]
test ecx, ecx
jne 0x624f17
mov dword [edx + 0x40], eax
jmp 0x624f43
lea edi, [edx + 0x40]
call fcn.0045f750
jmp 0x624f43
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0048f2e0
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
add esp, 0x104
ret
mov eax, dword [ebx + 0x10]
mov dword [esp], ebp
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x110]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x114]
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0x104
ret
lea eax, [0x658f60]
mov dword [esp], eax
lea eax, [0x6f5e9c]
mov dword [esp + 4], eax
call fcn.00434250
lea eax, [0x658f60]
mov dword [esp], eax
lea eax, [0x6f5e9c]
mov dword [esp + 4], eax
call fcn.00434250
call fcn.0045f810
lea eax, [0x658f60]
mov dword [esp], eax
lea eax, [0x6f5e9c]
mov dword [esp + 4], eax
call fcn.00434250
nop
call fcn.0045e340
jmp fcn.006229b0