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

Disassembly:
mov eax, 0x3eec
call fcn.10124820
mov eax, dword [0x103b0024]
xor eax, esp
mov dword [esp + 0x3ee8], eax
mov eax, dword [esp + 0x3ef8]
push ebx
push ebp
mov ebp, dword [esp + 0x3f04]
push esi
mov esi, dword [esp + 0x3efc]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x3f18]
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0xb0]
lea ebx, [esi + 4]
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x2c], eax
push edi
mov eax, dword [eax + 0x218]
mov edi, dword [esi]
push 0x80
mov dword [esp + 0x4c], esi
mov eax, dword [eax + 0x220]
shl eax, 0x10
mov dword [esp + 0x88], eax
xor eax, eax
push eax
mov dword [esp + 0x68], eax
lea eax, [esp + 0x3e80]
push eax
mov dword [esp + 0x98], ebp
mov dword [esp + 0x50], 0
mov dword [esp + 0x78], ebx
mov dword [esp + 0x94], ecx
mov dword [esp + 0x5c], 0
mov byte [esp + 0x74], 0
mov byte [esp + 0x37], 0
mov dword [esp + 0x84], 0x1312d00
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
mov dword [esp + 0x3e64], 0
push 0x2e04
lea eax, [esp + 0x140]
movq qword [esp + 0x3e60], xmm0
push 0
push eax
movups xmmword [esp + 0x3e78], xmm0
mov dword [esp + 0xf4], edi
movq qword [esp + 0x3e88], xmm0
mov dword [esp + 0xf8], ebx
mov dword [esp + 0xfc], 0x10
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0xd4], edi
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 0x14
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xb8], edi
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], 0x14
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
movlpd qword [esp + 0x114], xmm0
movlpd qword [esp + 0x11c], xmm0
movlpd qword [esp + 0x124], xmm0
mov dword [esp + 0x110], ebx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x8c]
movaps xmm0, xmmword [0x10140df0]
push 0xf1c
mov dword [esp + 0x150], eax
lea eax, [esp + 0x1f8c]
mov dword [esp + 0x14c], esi
mov dword [esp + 0x2ea8], edi
mov dword [esp + 0x2eac], ebx
movups xmmword [esp + 0x2eb0], xmm0
mov dword [esp + 0x2ec0], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0xac]
mov bl, byte [esi + 0xb8]
mov dword [esp + 0x1fa4], eax
lea eax, [esp + 0x1f94]
mov dword [esp + 0x1f98], eax
lea eax, [esp + 0x2eb0]
push 0xf1c
mov dword [esp + 0x1fa0], eax
lea eax, [esp + 0x107c]
push 0
push eax
mov byte [esp + 0x1fad], bl
mov dword [esp + 0x1fa0], esi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x1094], eax
lea eax, [esp + 0x1fa0]
mov dword [esp + 0x1088], eax
lea eax, [esp + 0x2ebc]
push 0xf1c
mov dword [esp + 0x1090], eax
lea eax, [esp + 0x16c]
push 0
push eax
mov byte [esp + 0x109d], bl
mov dword [esp + 0x1090], esi
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [esp + 0xc4]
lea eax, [esp + 0x1fac]
mov dword [esp + 0x178], eax
add esp, 0x3c
lea eax, [esp + 0x2e8c]
mov byte [esp + 0x145], bl
mov dword [esp + 0x140], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x2ea8], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 0x2eac], eax
mov eax, dword [ebp]
mov dword [esp + 0x2eb4], eax
lea eax, [esp + 0xbc]
mov dword [esp + 0x2ec0], eax
lea eax, [esp + 0xa0]
mov dword [esp + 0x2ec4], eax
lea eax, [esp + 0xf8]
mov dword [esp + 0x2ec8], eax
lea eax, [esi + 0xf0]
mov dword [esp + 0x2ed0], eax
mov al, byte [esi + 0xb9]
mov byte [esp + 0x2ebe], al
mov eax, dword [esp + 0x48]
mov dword [esp + 0x148], ecx
mov dword [esp + 0x138], esi
mov esi, dword [esi + 0xe4]
mov ebx, dword [eax + 0xe8]
mov eax, esi
cdq
mov dword [esp + 0x2eb0], ecx
mov ecx, dword [ebp + 4]
mov ebp, dword [esp + 0x3f18]
mov dword [esp + 0x2eb8], ecx
mov ecx, eax
xor ecx, edx
mov dword [esp + 0x1c], ebp
sub ecx, edx
mov dword [esp + 0x2ecc], ebp
mov eax, ebx
mov dword [esp + 0x2ed4], esi
cdq
xor eax, edx
mov dword [esp + 0x2ed8], ebx
sub eax, edx
cmp ecx, eax
jle 0x100ecace
test esi, esi
jmp 0x100ecad2
mov esi, ebx
test ebx, ebx
jns 0x100ecad6
neg esi
mov ecx, dword [esp + 0x30]
lea eax, [esi + esi]
mov edx, dword [esp + 0x48]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x2edc], eax
mov dword [esp + 0x2ee0], 0x199a
cmp byte [edx + 9], 0
mov byte [esp + 0x2ebf], 1
mov word [esp + 0x2ebc], 0
setne byte [esp + 0x23]
mov byte [esp + 0x2f0c], 0
mov eax, dword [ecx + 0x218]
mov eax, dword [eax + 0x21c]
shl eax, 0x10
mov dword [esi], eax
cmp byte [edx + 9], 0
je 0x100ecb3f
mov eax, dword [ecx + 0x214]
mov ebx, dword [eax + 0x614]
jmp 0x100ecb44
mov ebx, 0x30
lea eax, [esp + 0x9c]
mov dword [esp + 0x70], ebx
push eax
push 0x14
push edi
call fcn.100b4250
add esp, 0xc
mov esi, eax
cmp dword [esp + 0x9c], 0
mov dword [esp + 0x64], esi
jne 0x100ecba3
mov eax, dword [esp + 0x6c]
mov dword [esi + 4], eax
lea eax, [esp + 0x9c]
push eax
push 0
push ebx
push 0
push 8
push edi
mov dword [esi], edi
call fcn.100b42a0
add esp, 0x18
mov dword [esi + 8], eax
cmp dword [esp + 0x9c], 0
je 0x100ecbaf
push esi
push edi
call fcn.100b4230
add esp, 8
xor esi, esi
xor edi, edi
lea eax, [esi + 0x40]
jmp 0x100f084b
mov dword [esi + 0xc], eax
lea eax, [esp + 0xdc]
push 0x11
push eax
mov dword [esi + 0x10], ebx
call fcn.100e94c0
mov ecx, dword [esp + 0xf4]
add esp, 8
mov edi, dword [esp + 0xf4]
test al, al
mov eax, dword [esp + 0x6c]
mov edx, 0x11
cmovne ecx, edx
mov dword [esp + 0x24], edi
mov ebx, edi
mov dword [esp + 0x94], ecx
mov dword [esp + 0x18], ebx
cmp dword [eax], 0
jne 0x100f0c7c
mov eax, dword [esp + 0x3f04]
xor ecx, ecx
mov edx, dword [esp + 0x3f14]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
movups xmm0, xmmword [eax]
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x98], eax
movups xmmword [edi], xmm0
mov edi, dword [esp + 0xe0]
mov dword [esp + 0x90], edi
jmp 0x100ecc45
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx + 0xc]
cmp eax, dword [ebx + 8]
jb 0x100ecc62
test ecx, ecx
mov ebx, 0xb
mov eax, 0xe
cmove ebx, eax
mov dword [esp + 0x38], ebx
jmp 0x100ecc90
mov cl, byte [eax]
inc eax
mov dword [ebx + 0xc], eax
mov bl, cl
mov dword [esp + 0x38], ebx
cmp cl, 0xb
je 0x100ecc78
cmp cl, 0xe
jne 0x100ecc8c
mov ecx, dword [esp + 0x48]
xor edi, edi
movzx ebx, bl
cmp byte [ecx + 9], 0
cmovne ebx, edi
mov dword [esp + 0x38], ebx
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x48]
mov al, byte [eax + 8]
mov ah, byte [esp + 0x2b]
test al, al
je 0x100ecd30
test ah, ah
jne 0x100eccde
cmp bl, 1
je 0x100eccde
cmp bl, 3
je 0x100eccde
cmp bl, 0xd
je 0x100eccde
cmp bl, 0xa
je 0x100eccde
cmp bl, 0xb
je 0x100eccde
cmp bl, 0xc
je 0x100eccde
cmp bl, 0xe
je 0x100eccde
cmp bl, 0x20
jae 0x100eccde
mov eax, dword [esi + 8]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov edi, dword [esp + 0x60]
test edi, edi
jle 0x100ecd09
cmp bl, 0xa
je 0x100ecd09
cmp bl, 0xb
je 0x100ecd09
cmp bl, 0xc
je 0x100ecd09
cmp bl, 0x20
mov dword [esp + 0x40], 0
cmovb edi, dword [esp + 0x40]
mov dword [esp + 0x60], edi
cmp byte [esp + 0x68], 0
mov edx, dword [esp + 0x10]
je 0x100ecd30
cmp bl, 0x20
jae 0x100ecd30
mov ecx, dword [esp + 0x68]
xor edi, edi
movzx ecx, cl
cmp bl, 0xc
cmovne ecx, edi
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x6c]
cmp dword [edi], 0
jne 0x100f0843
sub dword [esp + 0x78], 1
je 0x100f0719
movzx edi, bl
cmp edi, 0x1f
ja case.default.0x100ecd54
jmp dword [edi*4 + 0x100f0c84]
mov ebx, dword [esp + 0x48]
cmp byte [ebx + 9], 0
je case.0x100ecd54.0
cmp byte [ebx + 0x5d], 0
jne 0x100f0719
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 8]
jne 0x100ecda1
mov eax, dword [esi + 4]
test eax, eax
je 0x100ecd8d
cmp dword [eax], 0
jne 0x100ecd8d
mov dword [eax], 0xa1
xor eax, eax
mov dword [ebx + 0x78], eax
mov eax, dword [esi + 8]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
cmp dword [eax - 4], 2
je 0x100ecdcd
mov eax, dword [esi + 4]
test eax, eax
je 0x100ecdb9
cmp dword [eax], 0
jne 0x100ecdb9
mov dword [eax], 0xa0
xor eax, eax
mov dword [ebx + 0x78], eax
mov eax, dword [esi + 8]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov eax, dword [eax]
test eax, eax
js case.0x100ecd54.0
mov dword [ebx + 0x78], eax
mov eax, dword [esi + 8]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov ebx, dword [esp + 0x48]
cmp byte [ebx + 9], 0
je case.0x100ecd54.0
cmp dword [ebx + 0x60], 0
je 0x100f0719
push dword [ebx + 0x80]
mov eax, dword [ebx + 0x224]
lea edi, [ebx + 0x5c]
push dword [ebx + 0x7c]
push dword [ebx + 0x78]
mov eax, dword [eax + 0xc]
push edi
call eax
add esp, 0x10
test al, al
je 0x100ece50
push dword [ebx + 0x80]
mov eax, dword [ebx + 0x224]
push dword [ebx + 0x7c]
push dword [ebx + 0x78]
mov eax, dword [eax + 0x10]
push edi
call eax
add esp, 0x10
mov dword [esp + 0x44], eax
test eax, eax
jne 0x100f0847
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 8]
jne 0x100ece6e
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x100ece6a
cmp dword [ecx], 0
jne 0x100ece6a
mov dword [ecx], 0xa1
xor eax, eax
jmp 0x100ece92
cmp dword [eax - 4], 2
je 0x100ece8a
mov eax, dword [esi + 4]
test eax, eax
je 0x100ece86
cmp dword [eax], 0
jne 0x100ece86
mov dword [eax], 0xa0
xor eax, eax
jmp 0x100ece92
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov eax, dword [eax]
cmp eax, dword [esp + 0x70]
ja 0x100f0719
push eax
push esi
push edi
call fcn.100ea000
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov byte [ebx + 0x5d], 1
jmp 0x100ecc3d
test al, al
jne 0x100ecec9
cmp byte [esp + 0xfc], al
jne case.0x100ecd54.0
mov edi, dword [esp + 0x30]
xor eax, eax
jmp 0x100eced3
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 0x20]
mov eax, dword [eax + 4]
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x60]
lea eax, [esp + 0xc8]
push eax
push esi
push dword [esp + 0x5c]
call fcn.100ea510
add esp, 0x18
cmp byte [edi + 0x224], 0
jne 0x100f0843
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
test al, al
jne 0x100ecf3c
cmp byte [esp + 0xfc], al
jne case.0x100ecd54.0
mov edi, dword [esp + 0x30]
xor eax, eax
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x60]
lea eax, [esp + 0xac]
jmp 0x100ecee4
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 0x20]
mov eax, dword [eax]
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x60]
lea eax, [esp + 0xac]
jmp 0x100ecee4
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
cmp eax, 1
jbe 0x100ecfa2
cmp byte [esp + 0x23], 0
jne 0x100ecfa2
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
sub eax, 1
je 0x100ecf83
sub eax, 1
jne 0x100ecf93
shl ecx, 0x10
jmp 0x100ecf93
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x84]
add eax, ecx
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov edi, dword [esp + 0x30]
mov byte [esp + 0x23], 1
cmp byte [edi + 0x224], 0
jne 0x100f0843
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 8]
jne 0x100ecfd6
mov eax, dword [esi + 4]
test eax, eax
je 0x100ecfd2
cmp dword [eax], 0
jne 0x100ecfd2
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ed000
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ecff0
sub eax, 1
jne 0x100ed000
shl ecx, 0x10
jmp 0x100ed000
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
add ebp, ecx
cmp dword [edi + 0x1d4], 0
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x3f18], ebp
jne 0x100eceff
mov eax, dword [esp + 0x10]
push ebp
push eax
lea eax, [esp + 0x138]
push eax
call fcn.100eb750
mov eax, dword [esi + 8]
add esp, 0xc
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov ebp, dword [esi + 0xc]
xor ebx, ebx
sub ebp, dword [esi + 8]
sar ebp, 3
test ebp, ebp
je 0x100f0383
nop word [eax + eax]
mov ecx, dword [esi + 0xc]
mov eax, ecx
mov edx, dword [esi + 8]
sub eax, edx
sar eax, 3
cmp ebx, eax
jb 0x100ed08d
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed089
cmp dword [eax], 0
jne 0x100ed089
mov dword [eax], 0x82
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor edi, edi
jmp 0x100ed0b3
mov eax, dword [edx + ebx*8 + 4]
mov edi, dword [edx + ebx*8]
sub eax, 1
je 0x100ed0a3
sub eax, 1
jne 0x100ed0b3
shl edi, 0x10
jmp 0x100ed0b3
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
add dword [esp + 0x10], edi
lea eax, [ebx + 1]
mov edi, dword [esp + 0x10]
sub ecx, edx
sar ecx, 3
mov dword [esp + 0x3f14], edi
cmp eax, ecx
jb 0x100ed0e4
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed0e0
cmp dword [eax], 0
jne 0x100ed0e0
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ed10b
mov eax, dword [edx + ebx*8 + 0xc]
mov ecx, dword [edx + ebx*8 + 8]
sub eax, 1
je 0x100ed0fb
sub eax, 1
jne 0x100ed10b
shl ecx, 0x10
jmp 0x100ed10b
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x1c]
add eax, ecx
push eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x3f1c], eax
lea eax, [esp + 0x134]
push edi
push eax
call fcn.100eb5d0
add ebx, 2
add esp, 0xc
cmp ebx, ebp
jb 0x100ed060
mov eax, dword [esi + 8]
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [esi + 0xc], eax
jmp 0x100ecc3d
mov ebp, dword [esi + 0xc]
sub ebp, dword [esi + 8]
sar ebp, 3
cmp bl, 6
sete bl
xor edi, edi
test ebp, ebp
je 0x100f0383
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
cmp edi, eax
jb 0x100ed18a
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed186
cmp dword [eax], 0
jne 0x100ed186
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ed1b0
mov eax, dword [ecx + edi*8 + 4]
mov ecx, dword [ecx + edi*8]
sub eax, 1
je 0x100ed1a0
sub eax, 1
jne 0x100ed1b0
shl ecx, 0x10
jmp 0x100ed1b0
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x1c]
test bl, bl
je 0x100ed1c7
add edx, ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x3f14], edx
jmp 0x100ed1d4
add eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x3f18], eax
push eax
push edx
lea eax, [esp + 0x138]
xor bl, 1
push eax
call fcn.100eb5d0
mov edx, dword [esp + 0x1c]
inc edi
add esp, 0xc
cmp edi, ebp
jb 0x100ed165
mov eax, dword [esi + 8]
mov ebp, dword [esp + 0x1c]
mov dword [esi + 0xc], eax
jmp 0x100ecc3d
mov eax, dword [esi + 0xc]
xor ebp, ebp
sub eax, dword [esi + 8]
sar eax, 3
mov dword [esp + 0x5c], eax
mov dword [esp + 0x2c], ebp
cmp eax, 6
jb 0x100ed486
lea ebx, [ebp + 2]
mov edi, dword [esi + 0xc]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
sar eax, 3
cmp ebp, eax
jb 0x100ed251
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed24d
cmp dword [eax], 0
jne 0x100ed24d
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ed278
mov eax, dword [edx + ebx*8 - 0xc]
mov ecx, dword [edx + ebx*8 - 0x10]
sub eax, 1
je 0x100ed268
sub eax, 1
jne 0x100ed278
shl ecx, 0x10
jmp 0x100ed278
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x10]
add eax, ecx
mov ecx, edi
sub ecx, edx
mov dword [esp + 0x34], eax
sar ecx, 3
lea eax, [ebx - 1]
cmp eax, ecx
jb 0x100ed2ac
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed2a8
cmp dword [eax], 0
jne 0x100ed2a8
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ed2d3
mov eax, dword [edx + ebx*8 - 4]
mov ecx, dword [edx + ebx*8 - 8]
sub eax, 1
je 0x100ed2c3
sub eax, 1
jne 0x100ed2d3
shl ecx, 0x10
jmp 0x100ed2d3
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov ebp, dword [esp + 0x1c]
mov eax, edi
sub eax, edx
add ebp, ecx
sar eax, 3
mov dword [esp + 0x40], ebp
cmp ebx, eax
jb 0x100ed304
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed300
cmp dword [eax], 0
jne 0x100ed300
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ed32a
mov eax, dword [edx + ebx*8 + 4]
mov ecx, dword [edx + ebx*8]
sub eax, 1
je 0x100ed31a
sub eax, 1
jne 0x100ed32a
shl ecx, 0x10
jmp 0x100ed32a
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x34]
add eax, ecx
mov ecx, edi
sub ecx, edx
mov dword [esp + 0x3c], eax
sar ecx, 3
lea eax, [ebx + 1]
cmp eax, ecx
jb 0x100ed35e
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed35a
cmp dword [eax], 0
jne 0x100ed35a
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ed385
mov eax, dword [edx + ebx*8 + 0xc]
mov ecx, dword [edx + ebx*8 + 8]
sub eax, 1
je 0x100ed375
sub eax, 1
jne 0x100ed385
shl ecx, 0x10
jmp 0x100ed385
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
add ebp, ecx
lea eax, [ebx + 2]
mov ecx, edi
sub ecx, edx
sar ecx, 3
cmp eax, ecx
jb 0x100ed3b1
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed3ad
cmp dword [eax], 0
jne 0x100ed3ad
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ed3d8
mov eax, dword [edx + ebx*8 + 0x14]
mov ecx, dword [edx + ebx*8 + 0x10]
sub eax, 1
je 0x100ed3c8
sub eax, 1
jne 0x100ed3d8
shl ecx, 0x10
jmp 0x100ed3d8
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x3c]
sub edi, edx
add eax, ecx
sar edi, 3
mov dword [esp + 0x10], eax
lea eax, [ebx + 3]
cmp eax, edi
jb 0x100ed404
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed400
cmp dword [eax], 0
jne 0x100ed400
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ed42b
mov eax, dword [edx + ebx*8 + 0x1c]
mov ecx, dword [edx + ebx*8 + 0x18]
sub eax, 1
je 0x100ed41b
sub eax, 1
jne 0x100ed42b
shl ecx, 0x10
jmp 0x100ed42b
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov edi, dword [esp + 0x10]
lea eax, [ecx + ebp]
push eax
push edi
push ebp
push dword [esp + 0x48]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x140]
push dword [esp + 0x50]
push dword [esp + 0x48]
push eax
call fcn.100eb270
mov eax, dword [esp + 0x38]
add ebx, 6
mov ebp, dword [esp + 0x48]
add esp, 0x1c
mov dword [esp + 0x3f18], eax
add ebp, 6
mov dword [esp + 0x3f14], edi
lea eax, [ebx + 4]
mov dword [esp + 0x2c], ebp
cmp eax, dword [esp + 0x5c]
jbe 0x100ed224
mov ebx, dword [esp + 0x38]
cmp bl, 0x18
jne 0x100eff07
mov ecx, dword [esi + 0xc]
mov eax, ecx
mov edi, dword [esi + 8]
sub eax, edi
sar eax, 3
cmp ebp, eax
jb 0x100ed4bc
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed4b8
cmp dword [eax], 0
jne 0x100ed4b8
mov dword [eax], 0x82
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
xor edx, edx
jmp 0x100ed4e2
mov eax, dword [edi + ebp*8 + 4]
mov edx, dword [edi + ebp*8]
sub eax, 1
je 0x100ed4d2
sub eax, 1
jne 0x100ed4e2
shl edx, 0x10
jmp 0x100ed4e2
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
mov ebx, dword [esp + 0x10]
lea eax, [ebp + 1]
sub ecx, edi
add ebx, edx
sar ecx, 3
mov dword [esp + 0x10], ebx
mov dword [esp + 0x3f14], ebx
cmp eax, ecx
jb 0x100ed515
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed511
cmp dword [eax], 0
jne 0x100ed511
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ed53b
mov ecx, dword [edi + eax*8]
mov eax, dword [edi + eax*8 + 4]
sub eax, 1
je 0x100ed52b
sub eax, 1
jne 0x100ed53b
shl ecx, 0x10
jmp 0x100ed53b
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov ebp, dword [esp + 0x1c]
lea eax, [esp + 0x130]
add ebp, ecx
push ebp
push ebx
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x3f24], ebp
call fcn.100eb5d0
mov eax, dword [esi + 8]
add esp, 0xc
mov edx, dword [esp + 0x10]
mov dword [esi + 0xc], eax
jmp 0x100ecc3d
test al, al
je case.0x100ecd54.0
cmp byte [esp + 0x2ebc], 0
je 0x100ed5f9
push dword [esp + 0x2f08]
lea eax, [esp + 0x134]
mov byte [esp + 0x2ec1], 1
push dword [esp + 0x2f08]
push eax
call fcn.100eb5d0
add esp, 0xc
cmp byte [esp + 0x2f0c], 0
je 0x100ed5df
push 1
push dword [esp + 0x2ef4]
lea eax, [esp + 0x2eec]
push dword [esp + 0x2ef4]
push eax
lea eax, [esp + 0x148]
push eax
lea eax, [esp + 0x144]
push eax
call fcn.100eb8a0
add esp, 0x18
mov byte [esp + 0x2ebf], 1
mov word [esp + 0x2ebc], 0
mov byte [esp + 0x2f0c], 0
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov byte [esp + 0x23], 1
mov dword [esi + 0xc], eax
jmp 0x100ecc45
cmp ecx, 0x10
jg 0x100f0719
inc ecx
cmp ecx, dword [esp + 0x94]
jb 0x100ed640
mov eax, dword [esp + 0x90]
test eax, eax
je 0x100ed63e
cmp dword [eax], 0
jne 0x100ed63e
mov dword [eax], 0x82
xor ecx, ecx
mov edx, dword [esp + 0x98]
mov eax, dword [esi + 0xc]
imul edx, ecx
add edx, dword [esp + 0x24]
mov dword [esp + 0x18], edx
cmp eax, dword [esi + 8]
jne 0x100ed670
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed66c
cmp dword [eax], 0
jne 0x100ed66c
mov dword [eax], 0xa1
xor eax, eax
jmp 0x100ed694
cmp dword [eax - 4], 2
je 0x100ed68c
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed688
cmp dword [eax], 0
jne 0x100ed688
mov dword [eax], 0xa0
xor eax, eax
jmp 0x100ed694
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov eax, dword [eax]
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x30]
cmp byte [ecx + 8], 0
je 0x100ed6c1
mov ecx, dword [edi + 0x268]
test ecx, ecx
je 0x100ed6c1
push ecx
push eax
call fcn.100b3e10
add esp, 8
test eax, eax
je 0x100ed6be
mov eax, dword [eax]
jmp 0x100ed6c1
or eax, 0xffffffff
cmp bl, 0x1d
xorps xmm0, xmm0
mov ebx, dword [esp + 0x18]
movups xmmword [ebx], xmm0
je 0x100ed756
mov ecx, dword [edi + 0x234]
add ecx, eax
cmp ecx, dword [edi + 0x22c]
jb 0x100ed6ee
mov eax, 1
jmp 0x100ed78b
mov eax, dword [edi + 0x23c]
lea edx, [ecx*4]
mov ecx, dword [edx + eax]
mov dword [ebx + 4], ecx
cmp byte [edi + 0x30], 0
je 0x100ed73a
mov eax, dword [edi + 0x264]
test eax, eax
je 0x100ed720
test ecx, ecx
je 0x100ed71c
mov eax, dword [edx + eax]
add eax, ecx
jmp 0x100ed744
xor eax, eax
jmp 0x100ed744
mov eax, dword [edi + 0x260]
test eax, eax
mov dword [esp + 0x5c], 0
cmovs eax, dword [esp + 0x5c]
add eax, ecx
mov dword [ebx + 4], eax
mov eax, dword [edi + 0x23c]
mov eax, dword [edx + eax + 4]
mov edx, 8
mov ecx, ebx
mov dword [edx + ecx], eax
mov eax, dword [ebx + 4]
mov dword [ebx + 0xc], eax
jmp 0x100ed789
mov ecx, dword [edi + 0x238]
add ecx, eax
cmp ecx, dword [edi + 0x230]
jb 0x100ed76d
mov eax, 1
jmp 0x100ed78b
mov eax, dword [edi + 0x240]
mov eax, dword [eax + ecx*4]
mov dword [ebx + 0xc], eax
mov dword [ebx + 4], eax
mov eax, dword [edi + 0x240]
mov eax, dword [eax + ecx*4 + 4]
mov dword [ebx + 8], eax
xor eax, eax
test eax, eax
jne 0x100f0719
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x14], ecx
jmp 0x100ecc45
cmp ecx, 1
jl 0x100f0719
dec ecx
mov ebx, ecx
mov dword [esp + 0x14], ecx
cmp ecx, dword [esp + 0x94]
jb 0x100ed7d6
mov edi, dword [esp + 0x90]
test edi, edi
je 0x100ed7d4
cmp dword [edi], 0
jne 0x100ed7d4
mov dword [edi], 0x82
xor ebx, ebx
imul ebx, dword [esp + 0x98]
add ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
jmp 0x100ecc45
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0xc]
cmp eax, dword [ebx + 8]
jae 0x100ed7ff
mov dl, byte [eax]
inc eax
mov dword [ebx + 0xc], eax
jmp 0x100ed812
mov eax, dword [ebx]
test eax, eax
je 0x100ed810
cmp dword [eax], 0
jne 0x100ed810
mov dword [eax], 0x55
xor dl, dl
movzx ecx, dl
mov byte [esp + 0x57], dl
lea eax, [ecx - 8]
cmp eax, 0x1d
ja case.0x100ed82c.9
movzx eax, byte [eax + 0x100f0d1c]
jmp dword [eax*4 + 0x100f0d04]
push 0
push 0x1014081c
jmp 0x100ed899
push 0
push 0x10140828
lea eax, [esp + 0x138]
push eax
lea eax, [esp + 0x3f24]
push eax
lea eax, [esp + 0x3f24]
push eax
push esi
call fcn.100ea210
mov ebp, dword [esp + 0x3f30]
add esp, 0x18
mov edx, dword [esp + 0x3f14]
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x10], edx
mov dword [esi + 0xc], eax
jmp 0x100ecc45
push 0
push 0x10140834
jmp 0x100ed899
push 1
push 0x10140840
lea eax, [esp + 0x138]
push eax
lea eax, [esp + 0x3f24]
push eax
lea eax, [esp + 0x3f24]
push eax
push esi
call fcn.100ea210
mov ebp, dword [esp + 0x3f30]
add esp, 0x18
mov edx, dword [esp + 0x3f14]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x10], edx
jmp 0x100ecc41
mov eax, dword [esp + 0x48]
cmp byte [eax + 9], 0
jne case.0x100ed922.0
cmp dl, 0x26
jae case.0x100ed922.0
mov al, byte [eax + 8]
mov edi, dword [esp + 0x60]
test al, al
je 0x100ed919
test edi, edi
jle 0x100ed919
cmp dl, 0x11
je 0x100ed919
mov edx, dword [esp + 0x10]
xor eax, eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x60], eax
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
cmp ecx, 0x21
ja case.0x100ed922.0
jmp dword [ecx*4 + 0x100f0d3c]
test al, al
je case.0x100ed922.0
mov edx, dword [esi + 0xc]
mov eax, edx
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
test eax, eax
jne 0x100ed95e
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed95a
cmp dword [eax], 0
jne 0x100ed95a
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor ebp, ebp
jmp 0x100ed982
mov eax, dword [ecx + 4]
mov ebp, dword [ecx]
sub eax, 1
je 0x100ed972
sub eax, 1
jne 0x100ed982
shl ebp, 0x10
jmp 0x100ed982
mov eax, ebp
shr eax, 0x1f
sub ebp, eax
add ebp, 0x2000
sar ebp, 0xe
mov eax, edx
sub eax, ecx
sar eax, 3
cmp eax, 2
ja 0x100ed9b0
mov eax, dword [esi + 4]
test eax, eax
je 0x100ed9a6
cmp dword [eax], 0
jne 0x100ed9a6
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esp + 0x2c], 0
jmp 0x100ed9dd
mov eax, dword [ecx + 0x14]
mov ebx, dword [ecx + 0x10]
mov dword [esp + 0x2c], ebx
sub eax, 1
je 0x100ed9c9
sub eax, 1
jne 0x100ed9dd
shl ebx, 0x10
jmp 0x100ed9d9
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
mov dword [esp + 0x2c], ebx
mov eax, edx
sub eax, ecx
sar eax, 3
cmp eax, 4
ja 0x100eda05
mov eax, dword [esi + 4]
test eax, eax
je 0x100eda01
cmp dword [eax], 0
jne 0x100eda01
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor ebx, ebx
jmp 0x100eda2a
mov eax, dword [ecx + 0x24]
mov ebx, dword [ecx + 0x20]
sub eax, 1
je 0x100eda1a
sub eax, 1
jne 0x100eda2a
shl ebx, 0x10
jmp 0x100eda2a
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
mov eax, edx
sub eax, ecx
sar eax, 3
cmp eax, 1
ja 0x100eda52
mov eax, dword [esi + 4]
test eax, eax
je 0x100eda4e
cmp dword [eax], 0
jne 0x100eda4e
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100eda77
mov eax, dword [ecx + 0xc]
mov edi, dword [ecx + 8]
sub eax, 1
je 0x100eda67
sub eax, 1
jne 0x100eda77
shl edi, 0x10
jmp 0x100eda77
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
sub edx, ecx
sar edx, 3
cmp edx, 2
jae 0x100eda95
mov eax, dword [esi + 4]
test eax, eax
je 0x100edaaa
cmp dword [eax], 0
jne 0x100edaaa
mov dword [eax], 0x82
jmp 0x100edaaa
mov eax, dword [esp + 0x2c]
sub eax, ebp
sub eax, edi
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 8]
mov dword [eax + 0x14], 0
mov ecx, dword [esi + 0xc]
mov eax, ecx
mov edi, dword [esi + 8]
sub eax, edi
sar eax, 3
cmp eax, 3
ja 0x100edad8
mov eax, dword [esi + 4]
test eax, eax
je 0x100edad4
cmp dword [eax], 0
jne 0x100edad4
mov dword [eax], 0x82
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
xor edx, edx
jmp 0x100edafd
mov eax, dword [edi + 0x1c]
mov edx, dword [edi + 0x18]
sub eax, 1
je 0x100edaed
sub eax, 1
jne 0x100edafd
shl edx, 0x10
jmp 0x100edafd
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
sub ecx, edi
sar ecx, 3
cmp ecx, 4
jae 0x100edb1b
mov eax, dword [esi + 4]
test eax, eax
je 0x100edb2e
cmp dword [eax], 0
jne 0x100edb2e
mov dword [eax], 0x82
jmp 0x100edb2e
sub ebx, dword [esp + 0x2c]
sub ebx, edx
mov dword [edi + 0x20], ebx
mov eax, dword [esi + 8]
mov dword [eax + 0x24], 0
cmp byte [esp + 0x57], 1
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 0x20]
jne 0x100edb40
mov eax, dword [eax]
jmp 0x100edb43
mov eax, dword [eax + 4]
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x60]
lea edx, [esp + 0xc8]
lea eax, [esp + 0xac]
cmovne eax, edx
push eax
push esi
push dword [esp + 0x5c]
call fcn.100ea510
add esp, 0x18
cmp byte [edi + 0x224], 0
jne 0x100f0843
mov eax, dword [esi + 8]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100edbba
mov eax, dword [esi + 4]
test eax, eax
je 0x100edbb6
cmp dword [eax], 0
jne 0x100edbb6
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebx, ebx
jmp 0x100edbe6
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100edbd6
sub eax, 1
jne 0x100edbe6
shl ebx, 0x10
jmp 0x100edbe6
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
cmp ecx, edx
jne 0x100edc3d
mov eax, dword [esi + 4]
test eax, eax
je 0x100edc02
cmp dword [eax], 0
jne 0x100edc02
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor edi, edi
mov eax, dword [esi + 0x10]
lea eax, [edx + eax*8]
cmp ecx, eax
jne 0x100edd25
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc3d
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100edc57
sub eax, 1
jne 0x100edc67
shl edi, 0x10
jmp 0x100edc67
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
test edi, edi
je 0x100edc02
test ebx, ebx
je 0x100edc02
mov edi, 1
jmp 0x100edc04
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100edc9c
mov eax, dword [esi + 4]
test eax, eax
je 0x100edc98
cmp dword [eax], 0
jne 0x100edc98
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebx, ebx
jmp 0x100edcc8
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100edcb8
sub eax, 1
jne 0x100edcc8
shl ebx, 0x10
jmp 0x100edcc8
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
cmp ecx, edx
jne 0x100edce6
mov eax, dword [esi + 4]
test eax, eax
je 0x100edd18
cmp dword [eax], 0
jne 0x100edd18
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
jmp 0x100edd18
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100edd00
sub eax, 1
jne 0x100edd10
shl edi, 0x10
jmp 0x100edd10
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
test edi, edi
jne 0x100edc6f
test ebx, ebx
jne 0x100edc6f
jmp 0x100edc02
mov edx, dword [esp + 0x10]
mov dword [ecx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
cmp ecx, edi
jne 0x100edd64
mov eax, dword [esi + 4]
test eax, eax
je 0x100edd60
cmp dword [eax], 0
jne 0x100edd60
mov dword [eax], 0xa1
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor edx, edx
jmp 0x100edd90
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov edx, dword [ecx]
sub eax, 1
je 0x100edd80
sub eax, 1
jne 0x100edd90
shl edx, 0x10
jmp 0x100edd90
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
mov eax, dword [esi + 0x10]
lea eax, [edi + eax*8]
cmp ecx, eax
jne 0x100eddc1
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc41
xor eax, eax
test edx, edx
mov edx, dword [esp + 0x10]
sete al
mov dword [ecx], eax
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc41
test al, al
jne 0x100f06ce
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
test al, al
je case.0x100ed922.0
push esi
call fcn.100f0e90
mov edi, dword [esp + 0x34]
push esi
mov ecx, dword [edi + 0x24]
mov dword [ecx + 4], eax
call fcn.100f0e90
mov ecx, dword [edi + 0x24]
push esi
mov dword [ecx], eax
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
mov edx, dword [esp + 0x40]
add esp, 0x10
mov byte [esp + 0x23], 1
mov ecx, dword [edx + 0x20]
add dword [ecx], eax
mov ecx, dword [edx + 0x20]
add dword [ecx + 4], edi
cmp byte [edx + 0x2f], 0
jne 0x100f0843
cmp byte [esp + 0x2b], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
je 0x100ecf0b
add edx, eax
mov eax, dword [esi + 8]
add ebp, edi
mov dword [esp + 0x10], edx
mov dword [esp + 0x3f14], edx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x3f18], ebp
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 8]
cmp edx, edi
jne 0x100edebe
mov eax, dword [esi + 4]
test eax, eax
je 0x100edea2
cmp dword [eax], 0
jne 0x100edea2
mov dword [eax], 0xa1
xor ecx, ecx
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
push eax
push esi
call fcn.100f0f30
mov edx, dword [esp + 0x18]
add esp, 8
jmp 0x100ecc41
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100eded8
sub eax, 1
jne 0x100edee8
shl ecx, 0x10
jmp 0x100edee8
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
cmp ecx, 0x80000001
jge 0x100edea4
mov eax, dword [esi + 0x10]
lea eax, [edi + eax*8]
cmp edx, eax
jne 0x100edf1d
mov eax, dword [esi + 4]
test eax, eax
je 0x100eec6c
cmp dword [eax], 0
mov edx, dword [esp + 0x10]
jne 0x100ecc41
mov dword [eax], 0x82
jmp 0x100ecc41
mov dword [edx], 0x7fffffff
jmp 0x100eec5e
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100edf4e
mov eax, dword [esi + 4]
test eax, eax
je 0x100edf4a
cmp dword [eax], 0
jne 0x100edf4a
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebx, ebx
jmp 0x100edf7a
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100edf6a
sub eax, 1
jne 0x100edf7a
shl ebx, 0x10
jmp 0x100edf7a
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
cmp ecx, edx
jne 0x100edf9a
mov eax, dword [esi + 4]
test eax, eax
je 0x100edf96
cmp dword [eax], 0
jne 0x100edf96
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor edi, edi
jmp 0x100edfc4
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100edfb4
sub eax, 1
jne 0x100edfc4
shl edi, 0x10
jmp 0x100edfc4
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esi + 0x10]
lea eax, [edx + eax*8]
cmp ecx, eax
je 0x100edc12
mov edx, dword [esp + 0x10]
lea eax, [edi + ebx]
mov dword [ecx], eax
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100ee014
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee010
cmp dword [eax], 0
jne 0x100ee010
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebx, ebx
jmp 0x100ee040
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100ee030
sub eax, 1
jne 0x100ee040
shl ebx, 0x10
jmp 0x100ee040
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
cmp ecx, edx
jne 0x100ee060
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee05c
cmp dword [eax], 0
jne 0x100ee05c
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor edi, edi
jmp 0x100ee08a
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100ee07a
sub eax, 1
jne 0x100ee08a
shl edi, 0x10
jmp 0x100ee08a
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esi + 0x10]
lea eax, [edx + eax*8]
cmp ecx, eax
je 0x100edc12
mov edx, dword [esp + 0x10]
sub edi, ebx
mov dword [ecx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
jmp 0x100ecc3d
test al, al
je 0x100ee0d3
cmp byte [esp + 0x68], 0
je 0x100ee0d3
push esi
call fcn.100f0ee0
push esi
mov edi, eax
call fcn.100f0ee0
mov byte [esp + 0x70], 0
jmp 0x100ee0e1
push esi
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
add esp, 8
push edi
push eax
call fcn.100ae0a0
mov edx, dword [esi + 0x10]
add esp, 8
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
lea ecx, [ecx + edx*8]
cmp edi, ecx
je 0x100edefa
mov dword [edi], eax
jmp 0x100eec5e
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 8]
cmp edx, edi
jne 0x100ee13c
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee125
cmp dword [eax], 0
jne 0x100ee125
mov dword [eax], 0xa1
xor ecx, ecx
neg ecx
push ecx
push esi
call fcn.100f0f30
mov edx, dword [esp + 0x18]
add esp, 8
jmp 0x100ecc41
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ee156
sub eax, 1
jne 0x100ee166
shl ecx, 0x10
jmp 0x100ee166
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
cmp ecx, 0x80000001
jl 0x100edef0
neg ecx
push ecx
push esi
call fcn.100f0f30
mov edx, dword [esp + 0x18]
add esp, 8
jmp 0x100ecc41
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100ee1ad
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee1a9
cmp dword [eax], 0
jne 0x100ee1a9
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebx, ebx
jmp 0x100ee1d9
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100ee1c9
sub eax, 1
jne 0x100ee1d9
shl ebx, 0x10
jmp 0x100ee1d9
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
cmp ecx, edx
jne 0x100ee1f9
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee1f5
cmp dword [eax], 0
jne 0x100ee1f5
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor edi, edi
jmp 0x100ee223
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100ee213
sub eax, 1
jne 0x100ee223
shl edi, 0x10
jmp 0x100ee223
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esi + 0x10]
lea eax, [edx + eax*8]
cmp ecx, eax
je 0x100edc12
mov edx, dword [esp + 0x10]
xor eax, eax
cmp edi, ebx
sete al
mov dword [ecx], eax
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test al, al
je 0x100ecc45
push esi
call fcn.100f0ee0
push esi
mov edx, eax
call fcn.100f0ee0
mov ebp, dword [esi + 0xc]
mov ebx, eax
mov ecx, dword [esi + 8]
add esp, 8
sub ebp, ecx
mov dword [esp + 0x2c], ebx
sar ebp, 3
cmp ebx, ebp
ja 0x100f0719
sub ebp, ebx
mov dword [esp + 0x50], 0
xor eax, eax
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x60], eax
cmp edx, 0x1c
ja case.0x100ee2af.4
movzx eax, byte [edx + 0x100f0e04]
jmp dword [eax*4 + 0x100f0dc4]
cmp ebx, 3
jne 0x100f0719
cmp byte [esp + 0x2b], 0
je 0x100ee2e4
mov edi, dword [esp + 0x30]
cmp dword [edi + 0x1d4], 0
je 0x100f0719
cmp dword [edi + 0x1d8], 7
jne 0x100f0719
mov eax, dword [esp + 0x10]
push eax
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x24]
push ebp
push esi
call fcn.100f0f30
mov edx, dword [esp + 0x20]
add esp, 0x10
mov dword [esp + 0x50], 2
jmp 0x100ecc3d
test ebx, ebx
jne 0x100f0719
cmp byte [esp + 0x2b], bl
je 0x100f06c1
mov edi, dword [esp + 0x30]
mov edx, dword [edi + 0xc]
movsx eax, word [edx + 0x16]
movsx ecx, word [edx + 0x3a]
add eax, 6
add eax, ecx
cmp eax, dword [edx + 4]
jbe 0x100ee34d
push ebx
push 6
push edx
call fcn.100ae980
add esp, 0xc
test eax, eax
jne 0x100f0843
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [edi + 0x1d4], 1
mov dword [edi + 0x1d8], 0
jmp 0x100ecc3d
test ebx, ebx
jne 0x100f0719
cmp byte [esp + 0x2b], bl
je 0x100f06c1
mov ecx, dword [esp + 0x30]
cmp dword [ecx + 0x1d4], ebx
je 0x100f0719
mov edi, dword [ecx + 0x1d8]
lea eax, [edi + 1]
mov dword [ecx + 0x1d8], eax
lea eax, [edi - 1]
cmp eax, 5
ja 0x100f06c1
push 1
push ecx
call fcn.100e71a0
add esp, 8
test eax, eax
jne 0x100f0719
lea eax, [edi - 3]
cmp edi, 3
jg 0x100ee3c8
mov eax, edi
mov edx, dword [esp + 0x10]
add eax, eax
mov ebp, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0x3e58], edx
mov dword [esp + eax*4 + 0x3e5c], ebp
cmp edi, 3
je 0x100ee3ee
cmp edi, 6
jne 0x100ecc3d
push dword [esp + 0x3e74]
lea eax, [esp + 0x134]
push dword [esp + 0x3e74]
push dword [esp + 0x3e74]
push dword [esp + 0x3e74]
push dword [esp + 0x3e74]
push dword [esp + 0x3e74]
push eax
call fcn.100eb270
mov edx, dword [esp + 0x2c]
add esp, 0x1c
jmp 0x100ecc3d
cmp ebx, 1
jne 0x100f0719
cmp byte [esp + 0x2b], 0
je 0x100ee48b
mov eax, dword [esp + 0x6c]
xorps xmm0, xmm0
movups xmmword [esp + 0xf8], xmm0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xcc], 0
movq qword [esp + 0x108], xmm0
mov dword [esp + 0x110], 0
mov dword [esp + 0xf8], eax
mov word [esp + 0xfc], 0x100
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], 1
jmp 0x100ecc3d
mov eax, dword [esp + 0x30]
mov ebx, dword [eax + 0x284]
mov dword [esp + 0x38], ebx
test ebx, ebx
je 0x100f0719
xor eax, eax
cmp edx, 0x12
sete al
lea ecx, [eax - 0xd]
mov eax, dword [ebx]
add ecx, edx
mov edx, dword [esp + 0x2c]
imul eax, ecx
mov dword [esp + 0x50], ecx
cmp edx, eax
jne 0x100f0719
lea edi, [ecx + ebp]
test ecx, ecx
je 0x100ee58e
mov dword [esp + 0x34], ecx
push ebp
push esi
call fcn.100f0e30
add esp, 8
mov ebp, eax
cmp dword [ebx], 1
jbe 0x100ee56b
mov eax, 1
mov ebx, 4
sub eax, edi
mov dword [esp + 0x4c], eax
push edi
push esi
call fcn.100f0e30
mov dword [esp + 0x64], eax
add esp, 8
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x88]
mov eax, dword [ebx + eax]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x40]
imul edx
mov ecx, edx
sar ecx, 0x1f
add ecx, 0x8000
add eax, ecx
adc edx, 0
shr eax, 0x10
shl edx, 0x10
add eax, edx
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x38]
lea ebx, [ebx + 4]
mov eax, dword [esp + 0x4c]
inc edi
add ebp, dword [esp + 0xd8]
add eax, edi
cmp eax, dword [ecx]
jb 0x100ee508
mov ebx, ecx
push ebp
mov ebp, dword [esp + 0x40]
push ebp
push esi
call fcn.100f0f70
inc ebp
add esp, 0xc
sub dword [esp + 0x34], 1
mov dword [esp + 0x3c], ebp
jne 0x100ee4e7
mov edx, dword [esp + 0x2c]
mov ecx, dword [esi + 0xc]
mov eax, ecx
sub eax, dword [esi + 8]
sub edx, dword [esp + 0x50]
sar eax, 3
cmp edx, eax
jbe 0x100ee5c8
mov eax, dword [esi + 4]
test eax, eax
je 0x100f0389
cmp dword [eax], 0
jne 0x100f0389
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [eax], 0xa1
jmp 0x100ecc3d
lea eax, [edx*8]
sub ecx, eax
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [esi + 0xc], ecx
jmp 0x100ecc3d
mov ebp, dword [esp + 0x30]
mov edi, dword [ebp + 0x284]
mov edx, dword [ebp + 0x28c]
cmp ebx, 1
jne 0x100f0719
test edi, edi
je 0x100f0719
push esi
call fcn.100f0ee0
mov ebx, eax
add esp, 4
mov eax, dword [edi]
cmp edx, eax
jb 0x100f0719
sub edx, eax
cmp edx, ebx
jb 0x100f0719
mov edx, dword [ebp + 0x288]
test edx, edx
je 0x100f06c1
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x100f06c1
shl eax, 2
push eax
push ecx
lea eax, [edx + ebx*4]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov ebp, dword [esp + 0x28]
add esp, 0xc
mov edx, dword [esp + 0x10]
jmp 0x100ecc3d
cmp ebx, 2
jne 0x100f0719
push esi
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
add eax, edi
push eax
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x2c]
add esp, 0x10
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], 1
jmp 0x100ecc3d
cmp ebx, 2
jne 0x100f0719
push esi
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
sub eax, edi
jmp 0x100ee674
cmp ebx, 2
jne 0x100f0719
push esi
call fcn.100f0e90
push esi
mov dword [esp + 0x64], eax
call fcn.100f0e90
add esp, 8
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x5c]
imul edx
mov ecx, edx
sar ecx, 0x1f
add ecx, 0x8000
add eax, ecx
adc edx, 0
shr eax, 0x10
shl edx, 0x10
add eax, edx
mov dword [esp + 0x7c], eax
push dword [esp + 0x7c]
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x24]
add esp, 8
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], 1
jmp 0x100ecc3d
cmp ebx, 2
jne 0x100f0719
push esi
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
add esp, 8
test edi, edi
je 0x100f0719
push edi
push eax
call fcn.100ae0a0
jmp 0x100ee674
cmp ebx, 2
jne 0x100f0719
mov ebx, dword [esp + 0x30]
cmp dword [ebx + 0x284], 0
je 0x100f0719
push esi
call fcn.100f0ee0
mov edi, eax
add esp, 4
cmp edi, dword [ebx + 0x28c]
jae 0x100f0719
push esi
call fcn.100f0e90
mov ecx, dword [ebx + 0x288]
add esp, 4
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov dword [ecx + edi*4], eax
jmp 0x100ecc3d
cmp ebx, 1
jne 0x100f0719
mov edi, dword [esp + 0x30]
cmp dword [edi + 0x284], 0
je 0x100f0719
push esi
call fcn.100f0ee0
add esp, 4
cmp eax, dword [edi + 0x28c]
jae 0x100f0719
mov ecx, dword [edi + 0x288]
push dword [ecx + eax*4]
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x24]
add esp, 8
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], ebx
jmp 0x100ecc3d
cmp ebx, 4
jne 0x100f0719
push esi
call fcn.100f0e90
push esi
mov ebp, eax
call fcn.100f0e90
push esi
mov ebx, eax
call fcn.100f0e90
push esi
mov edi, eax
call fcn.100f0e90
cmp ebx, ebp
cmovle edi, eax
push edi
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x34]
add esp, 0x18
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], 1
jmp 0x100ecc3d
test ebx, ebx
jne 0x100f0719
mov eax, dword [esp + 0x30]
mov edi, dword [eax + 0x218]
mov edx, dword [edi + 0x288]
mov ecx, edx
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor eax, ecx
mov dword [edi + 0x288], eax
movzx eax, dx
inc eax
push eax
push esi
call fcn.100f0f30
mov ebp, dword [esp + 0x24]
add esp, 8
mov edx, dword [esp + 0x10]
mov dword [esp + 0x50], 1
jmp 0x100ecc3d
test ebx, ebx
js 0x100f0719
test edx, edx
js 0x100f0719
cmp ebx, 3
mov eax, ebx
mov ecx, 3
cmovg eax, ecx
mov dword [esp + 0x60], eax
cmp eax, 1
jb 0x100f06c1
lea edi, [esp + eax*4 + 0x3e4c]
mov ebx, eax
nop dword [eax]
push esi
call fcn.100f0e90
add esp, 4
mov dword [edi], eax
lea edi, [edi - 4]
sub ebx, 1
jne 0x100ee8c0
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jmp 0x100ecc3d
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
test al, al
je 0x100ecc45
cmp dword [esp + 0x50], 0
jle 0x100ee900
dec dword [esp + 0x50]
jmp 0x100ecc41
test edi, edi
je 0x100f0719
push dword [esp + edi*4 + 0x3e4c]
dec edi
push esi
mov dword [esp + 0x68], edi
call fcn.100f0f30
mov edx, dword [esp + 0x18]
add esp, 8
jmp 0x100ecc41
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
cmp eax, dword [esi + 8]
jne 0x100ee955
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
jne 0x100ecc45
mov dword [eax], 0xa1
jmp 0x100ecc41
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
jmp 0x100ecc41
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x100ee983
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee97f
cmp dword [eax], 0
jne 0x100ee97f
mov dword [eax], 0xa1
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100ee9aa
cmp dword [eax - 4], 2
je 0x100ee9a2
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee99e
cmp dword [eax], 0
jne 0x100ee99e
mov dword [eax], 0xa0
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100ee9aa
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov edi, dword [eax]
mov edx, dword [esi + 0xc]
cmp edx, ecx
jne 0x100ee9c7
mov eax, dword [esi + 4]
test eax, eax
je 0x100ee9c3
cmp dword [eax], 0
jne 0x100ee9c3
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ee9f1
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ee9e1
sub eax, 1
jne 0x100ee9f1
shl ecx, 0x10
jmp 0x100ee9f1
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov edx, dword [esp + 0x10]
cmp edi, 0x20
jae 0x100ecc41
mov dword [esp + edi*4 + 0x3e78], ecx
jmp 0x100ecc41
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 8]
jne 0x100eea28
mov eax, dword [esi + 4]
test eax, eax
je 0x100eea24
cmp dword [eax], 0
jne 0x100eea24
mov dword [eax], 0xa1
xor eax, eax
jmp 0x100eea4c
cmp dword [eax - 4], 2
je 0x100eea44
mov eax, dword [esi + 4]
test eax, eax
je 0x100eea40
cmp dword [eax], 0
jne 0x100eea40
mov dword [eax], 0xa0
xor eax, eax
jmp 0x100eea4c
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov eax, dword [eax]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, 0x20
jae 0x100ecc45
push dword [esp + eax*4 + 0x3e78]
push esi
call fcn.100f0f30
mov edx, dword [esp + 0x18]
add esp, 8
jmp 0x100ecc41
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
cmp ecx, edx
jne 0x100eeaa2
mov eax, dword [esi + 4]
test eax, eax
je 0x100eea98
cmp dword [eax], 0
jne 0x100eea98
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
mov dword [esp + 0x2c], 0
jmp 0x100eeade
lea eax, [ecx - 8]
mov ecx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
sub eax, 1
je 0x100eeac8
sub eax, 1
mov eax, dword [ecx]
je 0x100eeabf
mov dword [esp + 0x2c], eax
jmp 0x100eeade
shl eax, 0x10
mov dword [esp + 0x2c], eax
jmp 0x100eeade
mov ebx, dword [ecx]
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
mov dword [esp + 0x2c], ebx
cmp ecx, edx
jne 0x100eeafe
mov eax, dword [esi + 4]
test eax, eax
je 0x100eeafa
cmp dword [eax], 0
jne 0x100eeafa
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ebp, ebp
jmp 0x100eeb28
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov ebp, dword [ecx]
sub eax, 1
je 0x100eeb18
sub eax, 1
jne 0x100eeb28
shl ebp, 0x10
jmp 0x100eeb28
mov eax, ebp
shr eax, 0x1f
sub ebp, eax
add ebp, 0x2000
sar ebp, 0xe
cmp ecx, edx
jne 0x100eeb48
mov eax, dword [esi + 4]
test eax, eax
je 0x100eeb44
cmp dword [eax], 0
jne 0x100eeb44
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor edi, edi
jmp 0x100eeb72
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edi, dword [ecx]
sub eax, 1
je 0x100eeb62
sub eax, 1
jne 0x100eeb72
shl edi, 0x10
jmp 0x100eeb72
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
cmp ecx, edx
jne 0x100eeb92
mov eax, dword [esi + 4]
test eax, eax
je 0x100eeb8e
cmp dword [eax], 0
jne 0x100eeb8e
mov dword [eax], 0xa1
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor ebx, ebx
jmp 0x100eebbc
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov ebx, dword [ecx]
sub eax, 1
je 0x100eebac
sub eax, 1
jne 0x100eebbc
shl ebx, 0x10
jmp 0x100eebbc
mov eax, ebx
shr eax, 0x1f
sub ebx, eax
add ebx, 0x2000
sar ebx, 0xe
mov eax, dword [esi + 0x10]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x10]
cmp ecx, eax
jne 0x100eebfd
mov ebp, dword [esp + 0x1c]
mov eax, dword [esi + 4]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x1c]
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc3d
cmp ebp, dword [esp + 0x2c]
cmovle edi, ebx
mov dword [ecx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
jmp 0x100ecc39
mov eax, dword [esp + 0x30]
mov edx, dword [eax + 0x218]
mov ecx, dword [edx + 0x288]
mov eax, ecx
shl eax, 0xd
movzx edi, cx
xor ecx, eax
mov eax, ecx
inc edi
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor eax, ecx
mov dword [edx + 0x288], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [eax + ecx*8]
cmp edx, eax
je 0x100edefa
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
mov edx, dword [esp + 0x10]
jmp 0x100ecc41
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 8]
cmp edx, edi
jne 0x100eeca1
mov eax, dword [esi + 4]
test eax, eax
je 0x100eec97
cmp dword [eax], 0
jne 0x100eec97
mov dword [eax], 0xa1
mov edx, dword [esi + 0xc]
mov edi, dword [esi + 8]
mov dword [esp + 0x34], 0
jmp 0x100eecdd
lea eax, [edx - 8]
mov edx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
sub eax, 1
je 0x100eecc7
sub eax, 1
mov eax, dword [edx]
je 0x100eecbe
mov dword [esp + 0x34], eax
jmp 0x100eecdd
shl eax, 0x10
mov dword [esp + 0x34], eax
jmp 0x100eecdd
mov ecx, dword [edx]
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov dword [esp + 0x34], ecx
cmp edx, edi
jne 0x100eecfd
mov eax, dword [esi + 4]
test eax, eax
je 0x100eecf3
cmp dword [eax], 0
jne 0x100eecf3
mov dword [eax], 0xa1
mov dword [esp + 0x2c], 0
jmp 0x100eed34
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100eed21
sub eax, 1
je 0x100eed18
mov dword [esp + 0x2c], ecx
jmp 0x100eed34
shl ecx, 0x10
mov dword [esp + 0x2c], ecx
jmp 0x100eed34
mov eax, dword [edx]
shr ecx, 0x1f
sub eax, ecx
add eax, 0x2000
sar eax, 0xe
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
imul edx
mov ecx, edx
sar ecx, 0x1f
add ecx, 0x8000
add eax, ecx
adc edx, 0
shr eax, 0x10
shl edx, 0x10
add eax, edx
mov dword [esp + 0x80], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [eax + ecx*8]
cmp edx, eax
je 0x100edefa
mov eax, dword [esp + 0x80]
mov dword [edx], eax
jmp 0x100eec5e
mov ebp, dword [esi + 0xc]
cmp ebp, dword [esi + 8]
jne 0x100eedb8
mov eax, dword [esi + 4]
test eax, eax
je 0x100eed99
cmp dword [eax], 0
jne 0x100eed99
mov dword [eax], 0xa1
xor ebx, ebx
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ebp, dword [esp + 0x1c]
lea eax, [eax + ecx*8]
cmp edx, eax
jne 0x100eee22
mov edx, dword [esp + 0x10]
jmp 0x100eebce
add ebp, 0xfffffff8
mov dword [esi + 0xc], ebp
mov eax, dword [ebp + 4]
mov ebp, dword [ebp]
sub eax, 1
je 0x100eedd3
sub eax, 1
jne 0x100eede3
shl ebp, 0x10
jmp 0x100eede3
mov eax, ebp
shr eax, 0x1f
sub ebp, eax
add ebp, 0x2000
sar ebp, 0xe
test ebp, ebp
jle 0x100eed99
mov eax, ebp
mov edi, ebp
sar eax, 1
cmp ebp, 0xa
cmovge edi, eax
push edi
push ebp
call fcn.100ae0a0
lea ebx, [edi + 1]
add esp, 8
add ebx, eax
sar ebx, 1
cmp ebx, edi
je 0x100eed9b
push ebx
push ebp
mov edi, ebx
call fcn.100ae0a0
inc ebx
add esp, 8
add ebx, eax
sar ebx, 1
cmp ebx, edi
jne 0x100eee08
jmp 0x100eed9b
mov dword [edx], ebx
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
cmp edx, ecx
jne 0x100eee61
mov eax, dword [esi + 4]
test eax, eax
je 0x100eee5d
cmp dword [eax], 0
jne 0x100eee5d
mov dword [eax], 0xa1
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
xor edi, edi
jmp 0x100eee8d
lea eax, [edx - 8]
mov edx, eax
mov dword [esi + 0xc], eax
mov eax, dword [eax + 4]
mov edi, dword [edx]
sub eax, 1
je 0x100eee7d
sub eax, 1
jne 0x100eee8d
shl edi, 0x10
jmp 0x100eee8d
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esi + 0x10]
lea eax, [ecx + eax*8]
cmp edx, eax
jne 0x100eeeab
mov eax, dword [esi + 4]
test eax, eax
je 0x100eeebe
cmp dword [eax], 0
jne 0x100eeebe
mov dword [eax], 0x82
jmp 0x100eeebb
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
lea eax, [eax + ecx*8]
cmp edx, eax
jne 0x100eec5c
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x10]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
mov ecx, dword [esp + 0x14]
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc41
mov edi, dword [esi + 0xc]
cmp edi, dword [esi + 8]
jne 0x100eef18
mov eax, dword [esi + 4]
test eax, eax
je 0x100eef14
cmp dword [eax], 0
jne 0x100eef14
mov dword [eax], 0xa1
xor edi, edi
jmp 0x100eef42
add edi, 0xfffffff8
mov dword [esi + 0xc], edi
mov eax, dword [edi + 4]
mov edi, dword [edi]
sub eax, 1
je 0x100eef32
sub eax, 1
jne 0x100eef42
shl edi, 0x10
jmp 0x100eef42
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
push esi
call fcn.100f0e90
push edi
push esi
mov ebx, eax
call fcn.100f0f30
mov edx, dword [esi + 0x10]
add esp, 0xc
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
lea ecx, [ecx + edx*8]
cmp edi, ecx
jne 0x100eef87
mov eax, dword [esi + 4]
test eax, eax
je 0x100f06c5
cmp dword [eax], 0
mov edx, dword [esp + 0x10]
jne 0x100ecc3d
mov dword [eax], 0x82
jmp 0x100ecc3d
mov edx, dword [esp + 0x10]
mov dword [edi], ebx
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
jmp 0x100ecc3d
push esi
call fcn.100f0ee0
mov ecx, dword [esi + 0xc]
add esp, 4
sub ecx, dword [esi + 8]
sar ecx, 3
test ecx, ecx
je 0x100eec6c
test eax, eax
js 0x100eefc8
cmp eax, ecx
jb 0x100eefc6
xor ecx, ecx
jmp 0x100eefc9
sub ecx, eax
dec ecx
push ecx
push esi
call fcn.100f0e30
push eax
push esi
call fcn.100f0f30
add esp, 0x10
nop word [eax + eax]
mov edx, dword [esp + 0x10]
jmp 0x100ecc41
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x100ef00c
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef008
cmp dword [eax], 0
jne 0x100ef008
mov dword [eax], 0xa1
mov ecx, dword [esi + 8]
xor edx, edx
jmp 0x100ef033
cmp dword [eax - 4], 2
je 0x100ef02b
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef027
cmp dword [eax], 0
jne 0x100ef027
mov dword [eax], 0xa0
mov ecx, dword [esi + 8]
xor edx, edx
jmp 0x100ef033
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov edx, dword [eax]
mov eax, dword [esi + 0xc]
cmp eax, ecx
jne 0x100ef050
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef04c
cmp dword [eax], 0
jne 0x100ef04c
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ef074
cmp dword [eax - 4], 2
je 0x100ef06c
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef068
cmp dword [eax], 0
jne 0x100ef068
mov dword [eax], 0xa0
xor ecx, ecx
jmp 0x100ef074
add eax, 0xfffffff8
mov dword [esi + 0xc], eax
mov ecx, dword [eax]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 2
cmp ecx, 2
jl 0x100eefe0
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
sar eax, 3
cmp ecx, eax
ja 0x100eeecf
test edx, edx
jns 0x100ef0b7
neg edx
mov eax, edx
cdq
idiv ecx
mov ebx, edx
neg ebx
mov dword [esp + 0x3c], ebx
jmp 0x100ef0c2
mov eax, edx
cdq
idiv ecx
mov ebx, edx
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x10]
test ebx, ebx
je 0x100ecc3d
or ebp, 0xffffffff
mov dword [esp + 0x40], ecx
or edi, ebp
lea eax, [ecx*8]
shl ebx, 3
mov dword [esp + 0x4c], ebx
lea edx, [ebp - 7]
mov ebx, dword [esi + 8]
cmp ebp, edi
jne 0x100ef10f
inc ebp
mov edi, ebp
lea edx, [ebp*8]
mov eax, dword [edx + ebx]
mov dword [esp + 0x38], eax
mov eax, dword [edx + ebx + 4]
mov dword [esp + 0x34], eax
lea eax, [ecx*8]
add edi, dword [esp + 0x3c]
add edx, dword [esp + 0x4c]
cmp edi, ecx
jl 0x100ef121
sub edi, ecx
sub edx, eax
jmp 0x100ef129
test edi, edi
jns 0x100ef129
add edi, ecx
add edx, eax
sub dword [esp + 0x40], 1
mov eax, dword [ebx + edx]
mov ecx, dword [ebx + edx + 4]
mov esi, dword [esp + 0x38]
mov dword [ebx + edx], esi
mov esi, dword [esp + 0x34]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x2c]
mov dword [ebx + edx + 4], esi
mov esi, dword [esp + 0x64]
mov dword [esp + 0x38], eax
lea eax, [ecx*8]
jne 0x100ef0e8
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jmp 0x100ecc3d
test al, al
je case.0x100ed922.0
cmp byte [esp + 0x2b], 0
je case.0x100ed922.0
push esi
call fcn.100f0e90
mov ebp, eax
push esi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x3f20], ebp
call fcn.100f0e90
mov edx, eax
add esp, 8
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], edx
mov dword [esp + 0x3f14], edx
mov dword [eax + 0x1d4], 0
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x14]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
test al, al
je case.0x100ecd54.0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 8]
jne 0x100ef1e9
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef1e5
cmp dword [eax], 0
jne 0x100ef1e5
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ef213
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
sub eax, 1
je 0x100ef203
sub eax, 1
jne 0x100ef213
shl ecx, 0x10
jmp 0x100ef213
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 0x24]
mov dword [eax], ecx
mov eax, dword [edi + 0x24]
mov dword [eax + 4], 0
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 8]
jne 0x100ef244
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef240
cmp dword [eax], 0
jne 0x100ef240
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ef26e
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ef25e
sub eax, 1
jne 0x100ef26e
shl ecx, 0x10
jmp 0x100ef26e
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [edi + 0x20]
mov byte [esp + 0x23], 1
add dword [eax], ecx
cmp byte [edi + 0x2f], 0
jne 0x100f0843
cmp byte [esp + 0x2b], 0
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
je 0x100ef1b4
mov eax, dword [esi + 8]
add edx, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], edx
mov dword [esp + 0x3f14], edx
mov dword [esi + 0xc], eax
jmp 0x100ecc45
test al, al
je 0x100f0a9c
test ah, ah
jne 0x100f0a9c
push ebp
push edx
lea eax, [esp + 0x138]
push eax
call fcn.100eb750
mov ecx, dword [esp + 0x20]
xorps xmm0, xmm0
mov eax, dword [esp + 0x78]
add esp, 0xc
mov byte [esp + 0x2b], 1
mov dword [esp + 0xb0], 0
mov dword [esp + 0xcc], 0
movq qword [esp + 0x108], xmm0
mov dword [esp + 0x110], 0
movups xmmword [esp + 0xf8], xmm0
mov dword [esp + 0xf8], eax
mov word [esp + 0xfc], 0x100
test ecx, ecx
jle 0x100ef376
mov esi, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
nop
lea eax, [ecx - 1]
cmp eax, edx
jb 0x100ef358
test esi, esi
je 0x100ef356
cmp dword [esi], 0
jne 0x100ef356
mov dword [esi], 0x82
xor eax, eax
mov ebp, ebx
dec ecx
imul ebp, eax
add ebp, dword [esp + 0x24]
mov dword [esp + 0x18], ebp
test ecx, ecx
jg 0x100ef340
mov esi, dword [esp + 0x64]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], ecx
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov eax, dword [ebx + 4]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
sar eax, 3
cmp eax, 1
jbe 0x100ef3ab
cmp byte [esp + 0xfc], 0
jne case.0x100ecd54.0
push 0
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x60]
lea eax, [esp + 0xac]
push eax
push esi
push dword [esp + 0x5c]
call fcn.100ea510
mov eax, dword [esp + 0x48]
add esp, 0x18
cmp byte [eax + 0x224], 0
jne 0x100f0843
cmp bl, 0x13
jne 0x100ef418
mov eax, dword [esp + 0xb0]
add eax, dword [esp + 0xcc]
mov ebx, dword [esp + 0x18]
push eax
lea eax, [esp + 0xfc]
push ebx
push eax
call fcn.100ec680
mov eax, dword [esi + 8]
add esp, 0xc
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
push 0xf1c
lea eax, [esp + 0x2f38]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [esp + 0x54]
xorps xmm0, xmm0
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x2f40], ecx
movlpd qword [esp + 0x124], xmm0
mov al, byte [ecx + 0xb8]
mov byte [esp + 0x2f4d], al
mov eax, dword [esp + 0x94]
mov dword [esp + 0x2f50], eax
lea eax, [esp + 0x1f7c]
mov dword [esp + 0x2f44], eax
lea eax, [esp + 0x2e98]
mov dword [esp + 0x2f48], eax
lea eax, [ecx + 4]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0xbc]
add eax, dword [esp + 0xd8]
push eax
lea eax, [esp + 0x124]
movlpd qword [esp + 0x130], xmm0
push ebx
push eax
movlpd qword [esp + 0x140], xmm0
call fcn.100ec680
push 0
push 0
lea eax, [esp + 0x134]
push eax
lea eax, [esp + 0xc4]
push eax
lea eax, [esp + 0xe4]
push eax
lea eax, [esp + 0x2f60]
push eax
call fcn.100ebf00
add esp, 0x30
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esi + 0xc], eax
jmp 0x100ecc45
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 8]
sub eax, edx
sar eax, 3
cmp eax, 2
jbe 0x100ef540
cmp byte [esp + 0x23], 0
jne 0x100ef540
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ef521
sub eax, 1
jne 0x100ef531
shl ecx, 0x10
jmp 0x100ef531
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x84]
add eax, ecx
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov ebx, dword [esp + 0x30]
mov byte [esp + 0x23], 1
cmp byte [ebx + 0x224], 0
jne 0x100f0843
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
cmp ecx, edi
jne 0x100ef57c
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef578
cmp dword [eax], 0
jne 0x100ef578
mov dword [eax], 0xa1
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 8]
xor edx, edx
jmp 0x100ef5a6
add ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov eax, dword [ecx + 4]
mov edx, dword [ecx]
sub eax, 1
je 0x100ef596
sub eax, 1
jne 0x100ef5a6
shl edx, 0x10
jmp 0x100ef5a6
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
add ebp, edx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x3f18], ebp
cmp ecx, edi
jne 0x100ef5cd
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef5c9
cmp dword [eax], 0
jne 0x100ef5c9
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ef5f7
lea edx, [ecx - 8]
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ef5e7
sub eax, 1
jne 0x100ef5f7
shl ecx, 0x10
jmp 0x100ef5f7
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov edi, dword [esp + 0x10]
add edi, ecx
cmp dword [ebx + 0x1d4], 0
mov dword [esp + 0x10], edi
mov dword [esp + 0x3f14], edi
jne 0x100eceff
push ebp
push edi
jmp 0x100ed020
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 8]
sub eax, edx
sar eax, 3
cmp eax, 1
jbe 0x100ef666
cmp byte [esp + 0x23], 0
jne 0x100ef666
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ef647
sub eax, 1
jne 0x100ef657
shl ecx, 0x10
jmp 0x100ef657
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x84]
add eax, ecx
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov ebx, dword [esp + 0x30]
mov byte [esp + 0x23], 1
cmp byte [ebx + 0x224], 0
jne 0x100f0843
mov edx, dword [esi + 0xc]
cmp edx, dword [esi + 8]
jne 0x100ef6a5
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef5c9
cmp dword [eax], 0
jne 0x100ef5c9
mov dword [eax], 0xa1
xor ecx, ecx
jmp 0x100ef5f7
add edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov eax, dword [edx + 4]
mov ecx, dword [edx]
sub eax, 1
je 0x100ef5e7
sub eax, 1
jne 0x100ef5f7
shl ecx, 0x10
jmp 0x100ef5f7
mov eax, dword [esi + 0xc]
xor ebx, ebx
sub eax, dword [esi + 8]
sar eax, 3
mov dword [esp + 0x38], eax
cmp eax, 6
jbe 0x100ef7c9
lea ebp, [ebx + 6]
mov ecx, dword [esi + 0xc]
mov eax, ecx
mov edx, dword [esi + 8]
sub eax, edx
sar eax, 3
cmp ebx, eax
jb 0x100ef712
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef70e
cmp dword [eax], 0
jne 0x100ef70e
mov dword [eax], 0x82
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor edi, edi
jmp 0x100ef738
mov eax, dword [edx + ebx*8 + 4]
mov edi, dword [edx + ebx*8]
sub eax, 1
je 0x100ef728
sub eax, 1
jne 0x100ef738
shl edi, 0x10
jmp 0x100ef738
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
add dword [esp + 0x10], edi
lea eax, [ebp - 5]
mov edi, dword [esp + 0x10]
sub ecx, edx
sar ecx, 3
mov dword [esp + 0x3f14], edi
cmp eax, ecx
jb 0x100ef769
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef765
cmp dword [eax], 0
jne 0x100ef765
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ef790
mov eax, dword [edx + ebx*8 + 0xc]
mov ecx, dword [edx + ebx*8 + 8]
sub eax, 1
je 0x100ef780
sub eax, 1
jne 0x100ef790
shl ecx, 0x10
jmp 0x100ef790
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x1c]
add eax, ecx
push eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x3f1c], eax
lea eax, [esp + 0x134]
push edi
push eax
call fcn.100eb5d0
mov eax, dword [esp + 0x44]
add ebp, 2
add esp, 0xc
add ebx, 2
cmp ebp, eax
jb 0x100ef6e5
mov ebp, dword [esp + 0x1c]
cmp ebx, eax
jae 0x100efa33
add ebx, 2
mov edi, dword [esi + 0xc]
lea eax, [ebx - 2]
mov edx, dword [esi + 8]
mov ecx, edi
sub ecx, edx
sar ecx, 3
cmp eax, ecx
jb 0x100ef804
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef800
cmp dword [eax], 0
jne 0x100ef800
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ef82b
mov eax, dword [edx + ebx*8 - 0xc]
mov ecx, dword [edx + ebx*8 - 0x10]
sub eax, 1
je 0x100ef81b
sub eax, 1
jne 0x100ef82b
shl ecx, 0x10
jmp 0x100ef82b
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x10]
add eax, ecx
mov ecx, edi
sub ecx, edx
mov dword [esp + 0x3c], eax
sar ecx, 3
lea eax, [ebx - 1]
cmp eax, ecx
jb 0x100ef85f
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef85b
cmp dword [eax], 0
jne 0x100ef85b
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ef886
mov eax, dword [edx + ebx*8 - 4]
mov ecx, dword [edx + ebx*8 - 8]
sub eax, 1
je 0x100ef876
sub eax, 1
jne 0x100ef886
shl ecx, 0x10
jmp 0x100ef886
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, edi
add ebp, ecx
sub eax, edx
mov dword [esp + 0x4c], ebp
sar eax, 3
cmp ebx, eax
jb 0x100ef8b3
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef8af
cmp dword [eax], 0
jne 0x100ef8af
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ef8d9
mov eax, dword [edx + ebx*8 + 4]
mov ecx, dword [edx + ebx*8]
sub eax, 1
je 0x100ef8c9
sub eax, 1
jne 0x100ef8d9
shl ecx, 0x10
jmp 0x100ef8d9
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x3c]
add eax, ecx
mov ecx, edi
sub ecx, edx
mov dword [esp + 0x40], eax
sar ecx, 3
lea eax, [ebx + 1]
cmp eax, ecx
jb 0x100ef90d
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef909
cmp dword [eax], 0
jne 0x100ef909
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ef934
mov eax, dword [edx + ebx*8 + 0xc]
mov ecx, dword [edx + ebx*8 + 8]
sub eax, 1
je 0x100ef924
sub eax, 1
jne 0x100ef934
shl ecx, 0x10
jmp 0x100ef934
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
add ebp, ecx
lea eax, [ebx + 2]
mov ecx, edi
sub ecx, edx
sar ecx, 3
cmp eax, ecx
jb 0x100ef960
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef95c
cmp dword [eax], 0
jne 0x100ef95c
mov dword [eax], 0x82
mov edi, dword [esi + 0xc]
mov edx, dword [esi + 8]
xor ecx, ecx
jmp 0x100ef987
mov eax, dword [edx + ebx*8 + 0x14]
mov ecx, dword [edx + ebx*8 + 0x10]
sub eax, 1
je 0x100ef977
sub eax, 1
jne 0x100ef987
shl ecx, 0x10
jmp 0x100ef987
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x40]
sub edi, edx
add eax, ecx
sar edi, 3
mov dword [esp + 0x10], eax
lea eax, [ebx + 3]
cmp eax, edi
jb 0x100ef9b3
mov eax, dword [esi + 4]
test eax, eax
je 0x100ef9af
cmp dword [eax], 0
jne 0x100ef9af
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100ef9da
mov eax, dword [edx + ebx*8 + 0x1c]
mov ecx, dword [edx + ebx*8 + 0x18]
sub eax, 1
je 0x100ef9ca
sub eax, 1
jne 0x100ef9da
shl ecx, 0x10
jmp 0x100ef9da
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x10]
lea edi, [ecx + ebp]
push edi
push eax
push ebp
push dword [esp + 0x4c]
lea eax, [esp + 0x140]
mov dword [esp + 0x2c], edi
push dword [esp + 0x5c]
push dword [esp + 0x50]
push eax
call fcn.100eb270
mov edx, dword [esp + 0x2c]
add ebx, 6
add esp, 0x1c
mov dword [esp + 0x3f14], edx
mov dword [esp + 0x3f18], edi
mov ebp, edi
lea eax, [ebx - 2]
cmp eax, dword [esp + 0x38]
jb 0x100ef7d4
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
jmp 0x100ecc39
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x10]
mov dword [esi + 0xc], eax
jmp 0x100ecc39
mov ebx, dword [esi + 0xc]
sub ebx, dword [esi + 8]
sar ebx, 3
mov ecx, ebx
and ecx, 0xfffffffd
sub ebx, ecx
mov dword [esp + 0x4c], ecx
cmp ebx, ecx
jae 0x100eff0b
mov edi, dword [esp + 0x10]
lea eax, [ebx + 3]
lea ebp, [ebx + 2]
mov dword [esp + 0x2c], eax
lea edx, [ebx + 1]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x34], edx
mov eax, ecx
sub eax, ebx
test al, 1
je 0x100efadb
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100efaa4
mov eax, dword [esi + 4]
test eax, eax
je 0x100efaa0
cmp dword [eax], 0
jne 0x100efaa0
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100efaca
mov eax, dword [ecx + ebx*8 + 4]
mov ecx, dword [ecx + ebx*8]
sub eax, 1
je 0x100efaba
sub eax, 1
jne 0x100efaca
shl ecx, 0x10
jmp 0x100efaca
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
inc edx
inc ebp
add edi, ecx
mov dword [esp + 0x34], edx
inc ebx
mov dword [esp + 0x38], ebp
inc dword [esp + 0x2c]
mov edx, dword [esi + 0xc]
mov eax, edx
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
mov dword [esp + 0x3c], edi
cmp ebx, eax
jb 0x100efb0c
mov eax, dword [esi + 4]
test eax, eax
je 0x100efb08
cmp dword [eax], 0
jne 0x100efb08
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efb32
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100efb22
sub eax, 1
jne 0x100efb32
shl edi, 0x10
jmp 0x100efb32
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov ebp, dword [esp + 0x1c]
mov eax, edx
sub eax, ecx
add ebp, edi
mov edi, dword [esp + 0x34]
sar eax, 3
cmp edi, eax
jb 0x100efb63
mov eax, dword [esi + 4]
test eax, eax
je 0x100efb5f
cmp dword [eax], 0
jne 0x100efb5f
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efb89
mov eax, dword [ecx + edi*8 + 4]
mov edi, dword [ecx + edi*8]
sub eax, 1
je 0x100efb79
sub eax, 1
jne 0x100efb89
shl edi, 0x10
jmp 0x100efb89
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x3c]
add eax, edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x10], eax
mov eax, edx
sub eax, ecx
sar eax, 3
cmp edi, eax
jb 0x100efbbe
mov eax, dword [esi + 4]
test eax, eax
je 0x100efbba
cmp dword [eax], 0
jne 0x100efbba
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efbe4
mov eax, dword [ecx + edi*8 + 4]
mov edi, dword [ecx + edi*8]
sub eax, 1
je 0x100efbd4
sub eax, 1
jne 0x100efbe4
shl edi, 0x10
jmp 0x100efbe4
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x2c]
sub edx, ecx
sar edx, 3
add edi, ebp
cmp eax, edx
jb 0x100efc09
mov eax, dword [esi + 4]
test eax, eax
je 0x100efc05
cmp dword [eax], 0
jne 0x100efc05
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100efc30
lea ecx, [ecx + eax*8]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
sub eax, 1
je 0x100efc20
sub eax, 1
jne 0x100efc30
shl ecx, 0x10
jmp 0x100efc30
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
lea eax, [edi + ecx]
push eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x14]
push eax
push edi
mov edi, eax
lea eax, [esp + 0x13c]
push edi
push ebp
push dword [esp + 0x50]
push eax
call fcn.100eb270
mov edx, dword [esp + 0x50]
add ebx, 4
mov ebp, dword [esp + 0x54]
add edx, 4
add dword [esp + 0x48], 4
add ebp, 4
mov ecx, dword [esp + 0x68]
add esp, 0x1c
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3f14], edi
mov dword [esp + 0x3f18], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], ebp
cmp ebx, ecx
jb 0x100efa77
mov ebp, eax
mov edx, edi
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
jmp 0x100ecc3d
mov ebx, dword [esi + 0xc]
sub ebx, dword [esi + 8]
sar ebx, 3
mov ecx, ebx
and ecx, 0xfffffffd
sub ebx, ecx
mov dword [esp + 0x5c], ecx
cmp ebx, ecx
jae 0x100eff0b
lea eax, [ebx + 3]
lea ebp, [ebx + 2]
mov dword [esp + 0x2c], eax
lea edx, [ebx + 1]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], edx
mov eax, ecx
sub eax, ebx
test al, 1
je 0x100efd40
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100efcff
mov eax, dword [esi + 4]
test eax, eax
je 0x100efcfb
cmp dword [eax], 0
jne 0x100efcfb
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100efd25
mov eax, dword [ecx + ebx*8 + 4]
mov ecx, dword [ecx + ebx*8]
sub eax, 1
je 0x100efd15
sub eax, 1
jne 0x100efd25
shl ecx, 0x10
jmp 0x100efd25
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov edi, dword [esp + 0x1c]
inc edx
add edi, ecx
mov dword [esp + 0x38], edx
inc ebp
mov dword [esp + 0x3c], edi
inc ebx
mov dword [esp + 0x34], ebp
inc dword [esp + 0x2c]
jmp 0x100efd48
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3c], eax
mov edx, dword [esi + 0xc]
mov eax, edx
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100efd75
mov eax, dword [esi + 4]
test eax, eax
je 0x100efd71
cmp dword [eax], 0
jne 0x100efd71
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efd9b
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100efd8b
sub eax, 1
jne 0x100efd9b
shl edi, 0x10
jmp 0x100efd9b
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov ebp, dword [esp + 0x10]
mov eax, edx
sub eax, ecx
add ebp, edi
mov edi, dword [esp + 0x38]
sar eax, 3
mov dword [esp + 0x4c], ebp
cmp edi, eax
jb 0x100efdd0
mov eax, dword [esi + 4]
test eax, eax
je 0x100efdcc
cmp dword [eax], 0
jne 0x100efdcc
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efdf6
mov eax, dword [ecx + edi*8 + 4]
mov edi, dword [ecx + edi*8]
sub eax, 1
je 0x100efde6
sub eax, 1
jne 0x100efdf6
shl edi, 0x10
jmp 0x100efdf6
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, edx
add ebp, edi
mov edi, dword [esp + 0x34]
sub eax, ecx
sar eax, 3
cmp edi, eax
jb 0x100efe23
mov eax, dword [esi + 4]
test eax, eax
je 0x100efe1f
cmp dword [eax], 0
jne 0x100efe1f
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100efe49
mov eax, dword [ecx + edi*8 + 4]
mov edi, dword [ecx + edi*8]
sub eax, 1
je 0x100efe39
sub eax, 1
jne 0x100efe49
shl edi, 0x10
jmp 0x100efe49
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x3c]
sub edx, ecx
add eax, edi
sar edx, 3
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x1c], eax
cmp edi, edx
jb 0x100efe76
mov eax, dword [esi + 4]
test eax, eax
je 0x100efe72
cmp dword [eax], 0
jne 0x100efe72
mov dword [eax], 0x82
xor ecx, ecx
jmp 0x100efe9e
mov eax, dword [ecx + edi*8 + 4]
lea ecx, [ecx + edi*8]
mov ecx, dword [ecx]
sub eax, 1
je 0x100efe8e
sub eax, 1
jne 0x100efe9e
shl ecx, 0x10
jmp 0x100efe9e
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
lea eax, [ecx + ebp]
mov ecx, dword [esp + 0x1c]
push ecx
push eax
push ecx
push ebp
push dword [esp + 0x4c]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x144]
push dword [esp + 0x60]
push eax
call fcn.100eb270
mov edx, dword [esp + 0x54]
add ebx, 4
mov ebp, dword [esp + 0x50]
add edx, 4
mov eax, dword [esp + 0x2c]
add ebp, 4
mov ecx, dword [esp + 0x78]
add edi, 4
add esp, 0x1c
mov dword [esp + 0x3f14], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3f18], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ebp
mov dword [esp + 0x2c], edi
cmp ebx, ecx
jb 0x100efcd2
mov ebp, dword [esp + 0x1c]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x10]
mov dword [esi + 0xc], eax
jmp 0x100ecc3d
mov ebp, dword [esi + 0xc]
sub ebp, dword [esi + 8]
sar ebp, 3
cmp bl, 0x1f
mov eax, ebp
sete bl
and eax, 0xfffffffd
sub ebp, eax
mov dword [esp + 0x34], eax
cmp ebp, eax
jae 0x100f0383
mov edi, dword [esp + 0x10]
mov edx, dword [esi + 0xc]
mov eax, edx
mov ecx, dword [esi + 8]
sub eax, ecx
sar eax, 3
test bl, bl
je 0x100f015b
cmp ebp, eax
jb 0x100eff75
mov eax, dword [esi + 4]
test eax, eax
je 0x100eff71
cmp dword [eax], 0
jne 0x100eff71
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100eff9b
mov eax, dword [ecx + ebp*8 + 4]
mov edi, dword [ecx + ebp*8]
sub eax, 1
je 0x100eff8b
sub eax, 1
jne 0x100eff9b
shl edi, 0x10
jmp 0x100eff9b
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x10]
lea ebx, [ebp + 1]
add eax, edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x3c], eax
mov eax, edx
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100effdb
mov eax, dword [esi + 4]
test eax, eax
je 0x100effd7
cmp dword [eax], 0
jne 0x100effd7
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100f0001
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100efff1
sub eax, 1
jne 0x100f0001
shl edi, 0x10
jmp 0x100f0001
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x38]
lea ebx, [ebp + 2]
add eax, edi
mov dword [esp + 0x2c], eax
mov eax, edx
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100f0035
mov eax, dword [esi + 4]
test eax, eax
je 0x100f0031
cmp dword [eax], 0
jne 0x100f0031
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100f005b
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100f004b
sub eax, 1
jne 0x100f005b
shl edi, 0x10
jmp 0x100f005b
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov ebx, dword [esp + 0x1c]
lea eax, [ebp + 3]
sub edx, ecx
add ebx, edi
sar edx, 3
mov dword [esp + 0x40], ebx
cmp eax, edx
jb 0x100f0087
mov eax, dword [esi + 4]
test eax, eax
je 0x100f0083
cmp dword [eax], 0
jne 0x100f0083
mov dword [eax], 0x82
xor edx, edx
jmp 0x100f00ad
mov edx, dword [ecx + eax*8]
mov eax, dword [ecx + eax*8 + 4]
sub eax, 1
je 0x100f009d
sub eax, 1
jne 0x100f00ad
shl edx, 0x10
jmp 0x100f00ad
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
lea eax, [ebx + edx]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x34]
sub eax, ebp
cmp eax, 5
jne 0x100f014c
mov eax, dword [esi + 0xc]
lea edx, [ebp + 4]
mov edi, dword [esi + 8]
sub eax, edi
sar eax, 3
cmp edx, eax
jb 0x100f00fe
mov eax, dword [esi + 4]
test eax, eax
je 0x100f00e7
cmp dword [eax], 0
jne 0x100f00e7
mov dword [eax], 0x82
mov eax, dword [esp + 0x2c]
xor ecx, ecx
mov ebp, dword [esp + 0x4c]
add eax, ecx
mov dword [esp + 0x10], eax
xor bl, bl
jmp 0x100f033b
mov eax, dword [edi + edx*8 + 4]
mov ecx, dword [edi + edx*8]
sub eax, 1
je 0x100f0127
sub eax, 1
jne 0x100f0137
mov eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x4c]
shl ecx, 0x10
add eax, ecx
xor bl, bl
mov dword [esp + 0x10], eax
jmp 0x100f033b
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x4c]
add eax, ecx
mov dword [esp + 0x10], eax
xor bl, bl
jmp 0x100f033b
mov eax, dword [esp + 0x2c]
xor bl, bl
mov dword [esp + 0x10], eax
jmp 0x100f033b
mov dword [esp + 0x38], edi
cmp ebp, eax
jb 0x100f017f
mov eax, dword [esi + 4]
test eax, eax
je 0x100f017b
cmp dword [eax], 0
jne 0x100f017b
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100f01a5
mov eax, dword [ecx + ebp*8 + 4]
mov edi, dword [ecx + ebp*8]
sub eax, 1
je 0x100f0195
sub eax, 1
jne 0x100f01a5
shl edi, 0x10
jmp 0x100f01a5
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x1c]
lea ebx, [ebp + 1]
add eax, edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x3c], eax
mov eax, edx
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100f01dd
mov eax, dword [esi + 4]
test eax, eax
je 0x100f01d9
cmp dword [eax], 0
jne 0x100f01d9
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100f0203
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100f01f3
sub eax, 1
jne 0x100f0203
shl edi, 0x10
jmp 0x100f0203
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov eax, dword [esp + 0x10]
lea ebx, [ebp + 2]
add eax, edi
mov dword [esp + 0x2c], eax
mov eax, edx
sub eax, ecx
sar eax, 3
cmp ebx, eax
jb 0x100f0237
mov eax, dword [esi + 4]
test eax, eax
je 0x100f0233
cmp dword [eax], 0
jne 0x100f0233
mov dword [eax], 0x82
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
xor edi, edi
jmp 0x100f025d
mov eax, dword [ecx + ebx*8 + 4]
mov edi, dword [ecx + ebx*8]
sub eax, 1
je 0x100f024d
sub eax, 1
jne 0x100f025d
shl edi, 0x10
jmp 0x100f025d
mov eax, edi
shr eax, 0x1f
sub edi, eax
add edi, 0x2000
sar edi, 0xe
mov ebx, dword [esp + 0x3c]
lea eax, [ebp + 3]
sub edx, ecx
add ebx, edi
sar edx, 3
mov dword [esp + 0x40], ebx
cmp eax, edx
jb 0x100f0289
mov eax, dword [esi + 4]
test eax, eax
je 0x100f0285
cmp dword [eax], 0
jne 0x100f0285
mov dword [eax], 0x82
xor edx, edx
jmp 0x100f02af
mov edx, dword [ecx + eax*8]
mov eax, dword [ecx + eax*8 + 4]
sub eax, 1
je 0x100f029f
sub eax, 1
jne 0x100f02af
shl edx, 0x10
jmp 0x100f02af
mov eax, edx
shr eax, 0x1f
sub edx, eax
add edx, 0x2000
sar edx, 0xe
mov eax, dword [esp + 0x2c]
add eax, edx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x34]
sub eax, ebp
cmp eax, 5
jne 0x100f0335
mov eax, dword [esi + 0xc]
lea edx, [ebp + 4]
mov edi, dword [esi + 8]
sub eax, edi
sar eax, 3
cmp edx, eax
jb 0x100f02f7
mov eax, dword [esi + 4]
test eax, eax
je 0x100f02e8
cmp dword [eax], 0
jne 0x100f02e8
mov dword [eax], 0x82
mov ebp, dword [esp + 0x4c]
xor ecx, ecx
lea eax, [ebx + ecx]
mov dword [esp + 0x1c], eax
jmp 0x100f0339
mov eax, dword [edi + edx*8 + 4]
mov ecx, dword [edi + edx*8]
sub eax, 1
je 0x100f0318
sub eax, 1
jne 0x100f0328
mov ebp, dword [esp + 0x4c]
shl ecx, 0x10
lea eax, [ebx + ecx]
mov dword [esp + 0x1c], eax
jmp 0x100f0339
mov eax, ecx
shr eax, 0x1f
sub ecx, eax
add ecx, 0x2000
sar ecx, 0xe
mov ebp, dword [esp + 0x4c]
lea eax, [ebx + ecx]
mov dword [esp + 0x1c], eax
jmp 0x100f0339
mov dword [esp + 0x1c], ebx
mov bl, 1
push dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
lea eax, [esp + 0x134]
push edi
push dword [esp + 0x48]
push dword [esp + 0x38]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push eax
call fcn.100eb270
mov eax, dword [esp + 0x38]
add ebp, 4
add esp, 0x1c
mov dword [esp + 0x3f14], edi
mov dword [esp + 0x3f18], eax
cmp ebp, dword [esp + 0x34]
jb 0x100eff40
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jmp 0x100ecc3d
mov ebx, dword [esp + 0x18]
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
cmp edx, ecx
jae 0x100f03af
mov al, byte [edx]
inc edx
mov dword [ebx + 0xc], edx
movzx edi, al
jmp 0x100f03c8
mov eax, dword [ebx]
test eax, eax
je 0x100f03c6
cmp dword [eax], 0
jne 0x100f03c6
mov dword [eax], 0x55
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
xor edi, edi
cmp edx, ecx
jae 0x100f03d9
mov cl, byte [edx]
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
movzx eax, cl
jmp 0x100f03ec
mov eax, dword [ebx]
test eax, eax
je 0x100f03ea
cmp dword [eax], 0
jne 0x100f03ea
mov dword [eax], 0x55
xor eax, eax
mov ecx, dword [esi + 0x10]
shl edi, 8
movsx edx, di
mov edi, dword [esi + 0xc]
or edx, eax
mov eax, dword [esi + 8]
lea eax, [eax + ecx*8]
mov ecx, dword [esp + 0x14]
cmp edi, eax
je 0x100eeed3
mov dword [edi], edx
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc45
cmp bl, 0xf6
ja 0x100f0484
mov ecx, dword [esi + 0x10]
add edi, 0xffffff75
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [eax + ecx*8]
cmp edx, eax
jne 0x100f046b
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc3d
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
cmp bl, 0xfa
ja 0x100f04f0
shl edi, 8
mov ebx, eax
cmp edx, ecx
jae 0x100f04a9
mov cl, byte [edx]
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
movzx eax, cl
jmp 0x100f04bc
mov eax, dword [ebx]
test eax, eax
je 0x100f04ba
cmp dword [eax], 0
jne 0x100f04ba
mov dword [eax], 0x55
xor eax, eax
mov ecx, dword [esi + 0x10]
add eax, 0xffff096c
mov edx, dword [esi + 0xc]
add edi, eax
mov eax, dword [esi + 8]
lea eax, [eax + ecx*8]
cmp edx, eax
je 0x100eeecf
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc41
cmp bl, 0xfe
mov ebx, dword [esp + 0x18]
ja 0x100f0556
shl edi, 8
cmp edx, ecx
jae 0x100f050d
mov cl, byte [edx]
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
movzx eax, cl
jmp 0x100f0520
mov eax, dword [ebx]
test eax, eax
je 0x100f051e
cmp dword [eax], 0
jne 0x100f051e
mov dword [eax], 0x55
xor eax, eax
mov ecx, dword [esi + 0x10]
mov edx, 0xfa94
sub edx, edi
mov edi, dword [esi + 0xc]
sub edx, eax
mov eax, dword [esi + 8]
lea eax, [eax + ecx*8]
cmp edi, eax
je 0x100eeecf
mov dword [edi], edx
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc41
cmp edx, ecx
jae 0x100f0565
mov al, byte [edx]
inc edx
mov dword [ebx + 0xc], edx
movzx edi, al
jmp 0x100f057e
mov eax, dword [ebx]
test eax, eax
je 0x100f057c
cmp dword [eax], 0
jne 0x100f057c
mov dword [eax], 0x55
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
xor edi, edi
cmp edx, ecx
jae 0x100f058d
mov al, byte [edx]
inc edx
mov dword [ebx + 0xc], edx
movzx ebp, al
jmp 0x100f05a6
mov eax, dword [ebx]
test eax, eax
je 0x100f05a4
cmp dword [eax], 0
jne 0x100f05a4
mov dword [eax], 0x55
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
xor ebp, ebp
cmp edx, ecx
jae 0x100f05b5
mov al, byte [edx]
inc edx
mov dword [ebx + 0xc], edx
movzx ebx, al
jmp 0x100f05ce
mov eax, dword [ebx]
test eax, eax
je 0x100f05cc
cmp dword [eax], 0
jne 0x100f05cc
mov dword [eax], 0x55
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
xor ebx, ebx
cmp edx, ecx
jae 0x100f05e3
mov cl, byte [edx]
lea eax, [edx + 1]
mov edx, dword [esp + 0x18]
mov dword [edx + 0xc], eax
movzx eax, cl
jmp 0x100f05fa
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
test eax, eax
je 0x100f05f8
cmp dword [eax], 0
jne 0x100f05f8
mov dword [eax], 0x55
xor eax, eax
shl edi, 8
or edi, ebp
shl edi, 8
or edi, ebx
shl edi, 8
or edi, eax
mov eax, dword [esp + 0x48]
cmp byte [eax + 8], 0
je 0x100f0698
cmp edi, 0x7d00
jg 0x100f0627
cmp edi, 0xffff8300
jge 0x100f063c
mov ecx, dword [esp + 0x68]
test cl, cl
movzx eax, cl
mov ecx, 1
cmove eax, ecx
mov byte [esp + 0x68], al
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [eax + ecx*8]
cmp edx, eax
jne 0x100f067b
mov eax, dword [esi + 4]
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test eax, eax
je 0x100ecc45
cmp dword [eax], 0
jne 0x100ecc45
mov dword [eax], 0x82
jmp 0x100ecc3d
mov ebp, dword [esp + 0x1c]
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
mov dword [eax + 4], 2
add dword [esi + 0xc], 8
jmp 0x100ecc3d
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
lea eax, [eax + ecx*8]
cmp edx, eax
jne 0x100f06b1
mov edx, dword [esp + 0x10]
jmp 0x100eebca
mov dword [edx], edi
mov eax, dword [esi + 0xc]
mov dword [eax + 4], 0
add dword [esi + 0xc], 8
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
jmp 0x100ecc3d
mov eax, dword [esp + 0x30]
push esi
mov eax, dword [eax + 4]
mov dword [esp + 0x68], eax
call fcn.100f0ee0
mov edi, eax
push esi
mov dword [esp + 0x48], edi
call fcn.100f0ee0
push esi
mov ebp, eax
call fcn.100f0e90
push esi
mov dword [esp + 0x80], eax
call fcn.100f0e90
push esi
mov ebx, eax
call fcn.100f0e90
add esp, 0x14
mov dword [esp + 0x78], eax
cmp byte [esp + 0x3f10], 0
je 0x100f0723
mov eax, 0x12
jmp 0x100f0847
mov edx, dword [esp + 0x30]
cmp byte [edx + 0x2f], 0
je 0x100f0737
mov eax, 0x12
jmp 0x100f0847
cmp dword [edx + 0x244], 0
mov ecx, dword [esp + 0x64]
jne 0x100f075a
mov eax, dword [ecx + 0x80]
cmp dword [eax + 0x34], 0
jne 0x100f075a
mov eax, 0x12
jmp 0x100f0847
mov eax, dword [edx + 0x20]
add ebx, dword [eax]
mov eax, dword [ecx + 0x80]
cmp dword [eax + 0x34], 0
jne 0x100f078b
push ebp
push edx
call fcn.100f1580
push edi
push dword [esp + 0x3c]
mov ebp, eax
call fcn.100f1580
mov edx, dword [esp + 0x40]
mov edi, eax
add esp, 0x10
mov dword [esp + 0x40], edi
test ebp, ebp
js 0x100f0719
test edi, edi
js 0x100f0719
cmp byte [edx + 0x2e], 0
je 0x100f0960
mov eax, dword [edx + 8]
mov dword [esp + 0x80], eax
push 2
mov eax, dword [eax + 0x9c]
mov edi, dword [eax]
push edi
mov dword [esp + 0x84], edi
call fcn.100aeb40
add esp, 8
test eax, eax
jne 0x100f0847
mov edi, dword [edi + 0x58]
mov eax, 0x202
sub ebx, dword [esp + 0x78]
push ebx
mov word [edi + 4], ax
mov eax, dword [esp + 0x44]
mov dword [edi + 0x20], eax
mov eax, 2
mov dword [edi], ebp
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov word [edi + 0x24], ax
call fcn.100b1b10
push dword [esp + 0x74]
sar eax, 0x10
mov dword [edi + 0x28], eax
call fcn.100b1b10
mov ecx, dword [esp + 0x88]
add esp, 8
mov edx, dword [esp + 0x7c]
sar eax, 0x10
mov dword [edi + 0x2c], eax
mov dword [ecx + 0x80], 2
mov eax, dword [edx + 0x34]
mov dword [ecx + 0x84], eax
mov dword [ecx + 0x48], 0x636f6d70
mov dword [edx + 0x54], 2
mov eax, dword [esp + 0x44]
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x6c]
test ebx, ebx
je 0x100f085a
cmp dword [ebx], 0
jne 0x100f085a
mov dword [ebx], eax
push dword [esp + 0x2ea4]
mov dword [esp + 0x2e9c], 0
push dword [esp + 0x2e90]
mov dword [esp + 0x2ea4], 0
mov dword [esp + 0x2ea8], 0
call fcn.100b4230
push dword [esp + 0xc0]
mov dword [esp + 0x2eb0], 0
push dword [esp + 0xac]
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
call fcn.100b4230
push dword [esp + 0xe4]
mov dword [esp + 0xcc], 0
push dword [esp + 0xd0]
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
call fcn.100b4230
push edi
push dword [esp + 0xf8]
mov dword [esp + 0xf4], 0
call fcn.100b4230
add esp, 0x20
test esi, esi
je 0x100f0947
push dword [esi + 8]
mov edi, dword [esi]
push edi
call fcn.100b4230
push esi
push edi
mov dword [esi + 8], 0
call fcn.100b4230
add esp, 0x10
mov ecx, dword [esp + 0x3ef8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.101238be
add esp, 0x3eec
ret
push dword [edx + 0xc]
call fcn.100aec60
lea eax, [esp + 0x3e54]
push eax
push ebp
push dword [esp + 0x3c]
call fcn.100eabd0
add esp, 0x10
test eax, eax
jne 0x100f0847
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 0x20]
mov ebp, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x64], eax
mov eax, dword [ecx + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x4c]
push eax
push 0
push 0
push 1
push dword [esp + 0x9c]
lea eax, [esp + 0x3e64]
mov dword [esp + 0x54], ecx
push dword [esp + 0x88]
push eax
push dword [esp + 0x64]
call fcn.100ec700
lea eax, [esp + 0x3e70]
push eax
push dword [esp + 0x54]
call fcn.100eaa80
mov edx, dword [esp + 0x58]
add esp, 0x28
cmp byte [esp + 0x23], 0
jne 0x100f0a0a
mov eax, dword [edx + 0x20]
mov ebp, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x64], eax
mov eax, dword [edx + 0x24]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x3c], eax
mov eax, dword [edx + 0x20]
mov dword [eax], 0
mov eax, dword [edx + 0x20]
mov dword [eax + 4], 0
lea eax, [esp + 0x3e50]
push eax
push edi
push edx
call fcn.100eabd0
add esp, 0xc
test eax, eax
jne 0x100f0847
sub ebx, dword [esp + 0x78]
lea eax, [esp + 0x4c]
push eax
push dword [esp + 0x74]
lea eax, [esp + 0x3e58]
push ebx
push 1
push dword [esp + 0x9c]
push dword [esp + 0x88]
push eax
push dword [esp + 0x64]
call fcn.100ec700
mov ebx, dword [esp + 0x50]
lea eax, [esp + 0x3e70]
push eax
push ebx
call fcn.100eaa80
mov eax, dword [ebx + 0x20]
add esp, 0x28
mov ecx, dword [esp + 0x64]
mov dword [eax], ebp
mov dword [eax + 4], ecx
mov eax, dword [ebx + 0x24]
mov ecx, dword [esp + 0x40]
mov dword [eax], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
jmp 0x100f0843
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
sar eax, 3
cmp eax, 1
je 0x100f0aaf
cmp eax, 5
jne 0x100f0ace
cmp byte [esp + 0x23], 0
jne 0x100f0ace
push 0
push esi
call fcn.100f0e30
mov ecx, dword [esp + 0x60]
add esp, 8
add eax, dword [esp + 0x84]
mov dword [ecx], eax
mov eax, dword [esp + 0x30]
cmp byte [eax + 0x224], 0
jne 0x100f0843
cmp byte [esp + 0x2ebc], 0
je 0x100f0b67
push dword [esp + 0x2f08]
lea eax, [esp + 0x134]
mov byte [esp + 0x2ec1], 1
push dword [esp + 0x2f08]
push eax
call fcn.100eb5d0
add esp, 0xc
cmp byte [esp + 0x2f0c], 0
je 0x100f0b4d
push 1
push dword [esp + 0x2ef4]
lea eax, [esp + 0x2eec]
push dword [esp + 0x2ef4]
push eax
lea eax, [esp + 0x148]
push eax
lea eax, [esp + 0x144]
push eax
call fcn.100eb8a0
add esp, 0x18
mov byte [esp + 0x2ebf], 1
mov word [esp + 0x2ebc], 0
mov byte [esp + 0x2f0c], 0
mov eax, dword [esp + 0x48]
cmp byte [eax + 9], 0
jne 0x100f0843
cmp byte [eax + 8], 0
jne 0x100f0843
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
sar eax, 3
cmp eax, 1
jbe 0x100f0843
cmp byte [esp + 0x3f10], 0
je 0x100f0ba5
mov eax, 0x12
jmp 0x100f0847
push esi
call fcn.100f0ee0
push esi
mov edi, eax
call fcn.100f0ee0
push esi
mov ebx, eax
call fcn.100f0e90
push esi
mov ebp, eax
call fcn.100f0e90
mov dword [esp + 0x90], eax
lea eax, [esp + 0x3e60]
push eax
push edi
mov edi, dword [esp + 0x48]
push edi
call fcn.100eab00
add esp, 0x1c
test eax, eax
jne 0x100f0847
lea eax, [esp + 0x7c]
push eax
push ebp
push dword [esp + 0x88]
mov ebp, dword [esp + 0x54]
lea eax, [esp + 0x3e5c]
push 1
push dword [esp + 0x9c]
push dword [esp + 0x88]
push eax
push ebp
call fcn.100ec700
lea eax, [esp + 0x3e70]
push eax
push edi
call fcn.100eaa50
lea eax, [esp + 0x3e78]
push eax
push ebx
push edi
call fcn.100eab00
add esp, 0x34
test eax, eax
jne 0x100f0847
lea eax, [esp + 0x7c]
push eax
push 0
push 0
push 1
push dword [esp + 0x9c]
lea eax, [esp + 0x3e64]
push dword [esp + 0x88]
push eax
push ebp
call fcn.100ec700
lea eax, [esp + 0x3e70]
push eax
push edi
call fcn.100eaa50
add esp, 0x28
jmp 0x100f0843
xor eax, eax
jmp 0x100f084b