Function at 0x1021e030
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x348
mov eax, dword [0x10411968]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.10211ce0
add esp, 4
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 8], 0
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x28], 0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x24], 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
lea ecx, [ebp - 0x348]
call fcn.1017f430
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], edx
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
lea ecx, [ebp - 0x338]
call fcn.1017f430
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x34], ecx
mov dword [eax + 0x38], edx
mov ecx, dword [ebp + 0xc]
call fcn.1020cf10
lea ecx, [ebp - 0x1a0]
call fcn.101eb020
lea ecx, [ebp - 0x220]
call fcn.101eb020
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x54]
push edx
lea ecx, [ebp - 0x1a0]
call fcn.1021f7e0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x3c]
push ecx
lea ecx, [ebp - 0x220]
call fcn.1021cd20
lea ecx, [ebp - 0x1a0]
call fcn.1021f820
push eax
push 0
mov edx, dword [ebp - 0x198]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x220]
call fcn.1021cea0
push eax
push 0
mov eax, dword [ebp - 0x218]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x1b8], 0
jmp 0x1021e15a
mov ecx, dword [ebp - 0x1b8]
add ecx, 1
mov dword [ebp - 0x1b8], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x1b8]
cmp eax, dword [edx + 0x54]
jge 0x1021e3d7
mov ecx, dword [ebp - 0x1b8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x15c], eax
mov edx, dword [ebp + 0xc]
add edx, 0x54
mov dword [ebp - 0x2b8], edx
mov eax, dword [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0x2b8]
call fcn.101eca30
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x15c]
mov dword [ebp - 0x304], ecx
mov edx, dword [ebp - 0x174]
cmp dword [edx + 0x74], 0
je 0x1021e1ce
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax + 0x74]
call fcn.101ed750
mov edx, dword [ebp - 0x15c]
mov dword [edx + 0x30], 0xffffffff
mov dword [ebp - 0x1bc], 0
jmp 0x1021e1f6
mov eax, dword [ebp - 0x1bc]
add eax, 1
mov dword [ebp - 0x1bc], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x1bc]
cmp edx, dword [ecx + 0x3c]
jge 0x1021e24c
mov eax, dword [ebp - 0x15c]
cmp dword [eax + 0x30], 0xffffffff
jne 0x1021e24c
mov ecx, dword [ebp + 0xc]
add ecx, 0x3c
mov dword [ebp - 0x300], ecx
mov edx, dword [ebp - 0x1bc]
push edx
mov ecx, dword [ebp - 0x300]
call fcn.101ec950
mov ecx, dword [ebp - 0x174]
mov edx, dword [ecx + 0x74]
cmp edx, dword [eax]
jne 0x1021e24a
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x1bc]
mov dword [eax + 0x30], ecx
jmp 0x1021e1e7
mov edx, dword [ebp - 0x15c]
cmp dword [edx + 0x30], 0xffffffff
jne 0x1021e280
mov byte [ebp - 0x16d], 0
lea ecx, [ebp - 0x220]
call fcn.101ec5a0
lea ecx, [ebp - 0x1a0]
call fcn.101ec5a0
mov al, byte [ebp - 0x16d]
jmp 0x1021f50b
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 0x174]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x304]
call fcn.1021d0b0
movzx eax, al
test eax, eax
jne 0x1021e2c9
mov byte [ebp - 0x16e], 0
lea ecx, [ebp - 0x220]
call fcn.101ec5a0
lea ecx, [ebp - 0x1a0]
call fcn.101ec5a0
mov al, byte [ebp - 0x16e]
jmp 0x1021f50b
mov ecx, dword [ebp - 0x15c]
mov edx, dword [ecx + 0x30]
push edx
lea ecx, [ebp - 0x220]
call fcn.101ec9f0
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x174]
cmp dword [eax + 0x30], 0
je 0x1021e301
mov ecx, dword [ebp - 0x174]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x25c], edx
jmp 0x1021e30f
mov ecx, dword [ebp + 0xc]
call fcn.1020d1a0
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x25c]
mov dword [eax + 0x2c], ecx
mov edx, dword [ebp - 0x15c]
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x1c0], eax
jmp 0x1021e33e
mov ecx, dword [ebp - 0x1c0]
add ecx, 4
mov dword [ebp - 0x1c0], ecx
mov edx, 2
imul eax, edx, 0
mov ecx, dword [ebp - 0x1c0]
movzx edx, word [ecx + eax]
test edx, edx
je 0x1021e39a
mov eax, 2
shl eax, 0
mov ecx, dword [ebp - 0x1c0]
movzx edx, word [ecx + eax]
test edx, edx
je 0x1021e39a
mov eax, 2
shl eax, 0
mov ecx, dword [ebp - 0x1c0]
movzx edx, word [ecx + eax]
push edx
mov eax, dword [ebp - 0x15c]
mov ecx, dword [eax + 0x34]
push ecx
call fcn.1021f520
add esp, 8
mov edx, dword [ebp - 0x15c]
mov dword [edx + 0x34], eax
jmp 0x1021e32f
mov eax, dword [ebp - 0x1e0]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x1e0]
mov dword [edx], ecx
mov eax, dword [ebp - 0x15c]
mov ecx, dword [eax + 0x34]
push ecx
mov edx, dword [ebp - 0x1e0]
mov eax, dword [edx + 4]
push eax
call fcn.1021f520
add esp, 8
mov ecx, dword [ebp - 0x1e0]
mov dword [ecx + 4], eax
jmp 0x1021e14b
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1e4], 0
jmp 0x1021e3fc
mov edx, dword [ebp - 0x1e4]
add edx, 1
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0x1a0]
jge 0x1021e624
mov ecx, dword [ebp - 0x1e4]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x30]
push eax
lea ecx, [ebp - 0x220]
call fcn.101ec9f0
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x164]
add ecx, 0x3c
mov dword [ebp - 0x318], ecx
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x34]
add eax, 1
push eax
mov ecx, dword [ebp - 0x318]
call fcn.1021c660
mov ecx, dword [ebp - 0x178]
add ecx, 0xc
call fcn.101edea0
movzx ecx, al
test ecx, ecx
je 0x1021e4a4
mov edx, dword [ebp - 0x178]
add edx, 0xc
mov dword [ebp - 0x31c], edx
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax + 4]
add ecx, 1
push ecx
mov ecx, dword [ebp - 0x31c]
call fcn.1021c660
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x18c], eax
jmp 0x1021e4c4
mov ecx, dword [ebp - 0x18c]
add ecx, 4
mov dword [ebp - 0x18c], ecx
mov edx, 2
imul eax, edx, 0
mov ecx, dword [ebp - 0x18c]
movzx edx, word [ecx + eax]
test edx, edx
je 0x1021e61f
mov eax, 2
shl eax, 0
mov ecx, dword [ebp - 0x18c]
movzx edx, word [ecx + eax]
test edx, edx
je 0x1021e61f
mov eax, 2
imul ecx, eax, 0
mov edx, dword [ebp - 0x18c]
movzx eax, word [edx + ecx]
mov dword [ebp - 0x17c], eax
jmp 0x1021e521
mov ecx, dword [ebp - 0x17c]
add ecx, 1
mov dword [ebp - 0x17c], ecx
mov edx, 2
shl edx, 0
mov eax, dword [ebp - 0x18c]
movzx ecx, word [eax + edx]
cmp dword [ebp - 0x17c], ecx
jg 0x1021e61a
mov edx, dword [ebp - 0x178]
add edx, 0xc
mov dword [ebp - 0x2fc], edx
mov eax, dword [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0x2fc]
call fcn.1021c540
movzx ecx, al
test ecx, ecx
je 0x1021e569
jmp 0x1021e512
mov edx, dword [ebp - 0x17c]
push edx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax + 0x18]
push ecx
call fcn.102db9c0
add esp, 8
mov dword [ebp - 0x27c], eax
cmp dword [ebp - 0x27c], 0
jne 0x1021e596
jmp 0x1021e512
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x38]
add eax, 1
mov ecx, dword [ebp - 0x164]
mov dword [ecx + 0x38], eax
mov edx, dword [ebp - 0x178]
mov eax, dword [edx + 8]
add eax, 1
mov ecx, dword [ebp - 0x178]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x164]
add edx, 0x3c
mov dword [ebp - 0x280], edx
push 1
mov eax, dword [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0x280]
call fcn.1021c6b0
mov ecx, dword [ebp - 0x178]
add ecx, 0xc
mov dword [ebp - 0x284], ecx
push 1
mov edx, dword [ebp - 0x17c]
push edx
mov ecx, dword [ebp - 0x284]
call fcn.1021c6b0
mov eax, dword [ebp - 0x1f0]
add eax, 1
mov dword [ebp - 0x1f0], eax
jmp 0x1021e512
jmp 0x1021e4b5
jmp 0x1021e3ed
mov dword [ebp - 0x1e8], 0
jmp 0x1021e63f
mov ecx, dword [ebp - 0x1e8]
add ecx, 1
mov dword [ebp - 0x1e8], ecx
mov edx, dword [ebp - 0x1e8]
cmp edx, dword [ebp - 0x1a0]
jge 0x1021e7aa
mov eax, dword [ebp - 0x1e8]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0x190]
add ecx, 0x48
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x38]
push eax
mov ecx, dword [ebp - 0x288]
call fcn.1021ca40
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.101a3540
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.1021c7c0
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x1c4], ecx
jmp 0x1021e6d2
mov edx, dword [ebp - 0x1c4]
add edx, 4
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1c4]
cmp eax, dword [ebp - 0x28c]
jae 0x1021e797
mov ecx, dword [ebp - 0x1c4]
mov edx, dword [ecx]
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 0
je 0x1021e792
mov dword [ebp - 0x1a4], 0
jmp 0x1021e71a
mov eax, dword [ebp - 0x1a4]
add eax, 1
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x1a4], 0x20
jge 0x1021e792
mov edx, 1
mov ecx, dword [ebp - 0x1a4]
shl edx, cl
and edx, dword [ebp - 0x260]
je 0x1021e78d
push 0x1c
push 0
lea eax, [ebp - 0x120]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, dword [ebp - 0x1c4]
sub ecx, dword [ebp - 0x264]
sar ecx, 2
shl ecx, 5
add ecx, dword [ebp - 0x1a4]
movzx edx, cx
mov dword [ebp - 0x10c], edx
mov eax, dword [ebp - 0x190]
add eax, 0x48
mov dword [ebp - 0x290], eax
lea ecx, [ebp - 0x120]
push ecx
mov ecx, dword [ebp - 0x290]
call fcn.1021c8b0
jmp 0x1021e70b
jmp 0x1021e6c3
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.101ecf60
jmp 0x1021e630
mov dword [ebp - 0x1ec], 0
jmp 0x1021e7c5
mov edx, dword [ebp - 0x1ec]
add edx, 1
mov dword [ebp - 0x1ec], edx
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x220]
jge 0x1021e7f1
mov ecx, dword [ebp - 0x1ec]
push ecx
lea ecx, [ebp - 0x220]
call fcn.101ec9f0
add eax, 0xc
mov ecx, eax
call fcn.101ecf60
jmp 0x1021e7b6
lea ecx, [ebp - 0x220]
call fcn.101ede60
lea ecx, [ebp - 0x314]
call fcn.101eb020
mov edx, dword [ebp - 0x1f0]
push edx
lea ecx, [ebp - 0x314]
call fcn.1021ce20
lea ecx, [ebp - 0x314]
call fcn.1021cee0
push eax
push 0
mov eax, dword [ebp - 0x30c]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x32c], 0x40000
mov dword [ebp - 0x1ac], 0
lea ecx, [ebp - 0x278]
call fcn.101eb020
push 0x40000
call fcn.101d6170
add esp, 4
mov dword [ebp - 0x294], eax
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [ebp - 0x278]
call fcn.101ee2d0
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1a8], 0
jmp 0x1021e8a9
mov edx, dword [ebp - 0x1a8]
add edx, 1
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a8]
cmp eax, dword [ebp - 0x1a0]
jge 0x1021ebf7
mov ecx, dword [ebp - 0x1a8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x154], eax
mov edx, dword [ebp + 0xc]
add edx, 0x54
mov dword [ebp - 0x298], edx
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, dword [ebp - 0x298]
call fcn.101eca30
mov dword [ebp - 0x268], eax
mov ecx, dword [ebp - 0x154]
cmp dword [ecx + 0x38], 0
jne 0x1021e905
jmp 0x1021e89a
mov edx, dword [ebp - 0x1f4]
push edx
lea ecx, [ebp - 0x314]
call fcn.1021c490
mov ecx, dword [ebp - 0x154]
mov dword [ecx + 0x28], eax
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x1f4]
add eax, dword [edx + 0x38]
mov dword [ebp - 0x1f4], eax
mov ecx, dword [ebp - 0x268]
movss xmm0, dword [ecx + 0x44]
ucomiss xmm0, dword [0x10333068]
lahf
test ah, 0x44
jnp 0x1021e956
mov byte [ebp - 0x155], 1
jmp 0x1021e95d
mov byte [ebp - 0x155], 0
mov dl, byte [ebp - 0x155]
mov byte [ebp - 0x156], dl
movzx eax, byte [ebp - 0x156]
test eax, eax
je 0x1021e994
mov ecx, dword [ebp - 0x268]
push ecx
movss xmm0, dword [ecx + 0x44]
movss dword [esp], xmm0
lea edx, [ebp - 0x104]
push edx
call fcn.102121e0
add esp, 8
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x22c], ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ebp - 0x2f8], eax
mov dword [ebp - 0x2f4], ecx
mov dword [ebp - 0x168], 0
jmp 0x1021e9d0
mov edx, dword [ebp - 0x168]
add edx, 1
mov dword [ebp - 0x168], edx
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0x168]
cmp ecx, dword [eax + 0x48]
jge 0x1021ebf2
mov edx, dword [ebp - 0x154]
add edx, 0x48
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp - 0x168]
push eax
mov ecx, dword [ebp - 0x29c]
call fcn.101ec990
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x2a0], ecx
mov edx, dword [ebp - 0x160]
mov eax, dword [edx + 0x14]
push eax
mov ecx, dword [ebp - 0x2a0]
call fcn.1021d370
mov dword [ebp - 0x2a4], eax
cmp dword [ebp - 0x2a4], 0
jne 0x1021ea3e
jmp 0x1021e9c1
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x2a8], ecx
mov edx, dword [ebp - 0x160]
push edx
mov ecx, dword [ebp - 0x2a8]
call fcn.1021d410
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x160]
mov edx, dword [eax]
imul edx, dword [ecx + 4]
mov dword [ebp - 0x26c], edx
mov eax, dword [ebp - 0x1ac]
add eax, dword [ebp - 0x26c]
cmp eax, 0x40000
jle 0x1021eabc
mov dword [ebp - 0x1ac], 0
push 0x40000
call fcn.101d6170
add esp, 4
mov dword [ebp - 0x2ac], eax
lea ecx, [ebp - 0x2ac]
push ecx
lea ecx, [ebp - 0x278]
call fcn.101ee2d0
lea ecx, [ebp - 0x278]
call fcn.101edcd0
mov edx, dword [eax]
add edx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp - 0x1ac]
add ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp - 0x154]
mov dword [ebp - 0x2b4], edx
movzx eax, byte [ebp - 0x156]
test eax, eax
je 0x1021eb0f
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x228], ecx
jmp 0x1021eb19
mov dword [ebp - 0x228], 0
mov edx, dword [ebp - 0x228]
push edx
mov eax, dword [ebp - 0x160]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x160]
mov eax, dword [edx + 0x18]
push eax
mov ecx, dword [ebp - 0x2b0]
push ecx
mov ecx, dword [ebp - 0x2b4]
call fcn.1021d4c0
mov edx, dword [ebp - 0x160]
mov eax, dword [edx]
add eax, dword [ebp - 0x22c]
cvtsi2ss xmm0, eax
addss xmm0, dword [ebp - 0x2f8]
cvttss2si ecx, xmm0
mov edx, dword [ebp - 0x168]
shl edx, 4
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + 0x28]
mov word [eax + edx + 4], cx
mov ecx, dword [ebp - 0x160]
mov edx, dword [ecx + 4]
add edx, dword [ebp - 0x22c]
cvtsi2ss xmm0, edx
addss xmm0, dword [ebp - 0x2f4]
cvttss2si eax, xmm0
mov ecx, dword [ebp - 0x168]
shl ecx, 4
mov edx, dword [ebp - 0x154]
mov edx, dword [edx + 0x28]
mov word [edx + ecx + 6], ax
mov eax, dword [ebp - 0x168]
shl eax, 4
mov ecx, dword [ebp - 0x154]
mov edx, dword [ecx + 0x28]
movzx eax, word [edx + eax + 4]
mov ecx, dword [ebp - 0x168]
shl ecx, 4
mov edx, dword [ebp - 0x154]
mov edx, dword [edx + 0x28]
movzx ecx, word [edx + ecx + 6]
imul eax, ecx
add eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x1f8], eax
jmp 0x1021e9c1
jmp 0x1021e89a
cvtsi2ss xmm0, dword [ebp - 0x1f8]
push ecx
movss dword [esp], xmm0
call fcn.1021d090
add esp, 4
fstp dword [ebp - 0x2f0]
movss xmm0, dword [ebp - 0x2f0]
cvttss2si edx, xmm0
add edx, 1
mov dword [ebp - 0x210], edx
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x28], 0
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0xc], 0
jle 0x1021ec4c
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [edx + 0x24], ecx
jmp 0x1021ecd1
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x1035d85c]
jb 0x1021ec69
mov dword [ebp - 0x238], 0x1000
jmp 0x1021ecc5
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x1035d858]
jb 0x1021ec86
mov dword [ebp - 0x234], 0x800
jmp 0x1021ecb9
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x1035d854]
jb 0x1021eca3
mov dword [ebp - 0x230], 0x400
jmp 0x1021ecad
mov dword [ebp - 0x230], 0x200
mov edx, dword [ebp - 0x230]
mov dword [ebp - 0x234], edx
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x238]
mov dword [ecx + 0x24], edx
mov dword [ebp - 0x330], 0x8000
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + 0x24]
sub edx, dword [ecx + 0x10]
mov dword [ebp - 0x2bc], edx
lea ecx, [ebp - 0x328]
call fcn.101eb020
mov eax, dword [ebp - 0x2bc]
push eax
lea ecx, [ebp - 0x328]
call fcn.101eeae0
mov ecx, dword [ebp - 0x328]
push ecx
mov edx, dword [ebp - 0x320]
push edx
push 0x8000
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x24]
push ecx
lea edx, [ebp - 0x150]
push edx
call fcn.1021d8e0
add esp, 0x14
lea eax, [ebp - 0x150]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10211dc0
add esp, 8
mov dword [ebp - 0x1c8], 0
jmp 0x1021ed61
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1c8]
cmp eax, dword [ebp - 0x1a0]
jge 0x1021ee51
mov ecx, dword [ebp - 0x1c8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x180], eax
mov edx, dword [ebp - 0x180]
cmp dword [edx + 0x38], 0
jne 0x1021ed99
jmp 0x1021ed52
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax + 0x38]
push ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [edx + 0x28]
push eax
lea ecx, [ebp - 0x150]
push ecx
call fcn.1021d6e0
add esp, 0xc
mov dword [ebp - 0x194], 0
jmp 0x1021edd7
mov edx, dword [ebp - 0x194]
add edx, 1
mov dword [ebp - 0x194], edx
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x194]
cmp ecx, dword [eax + 0x38]
jge 0x1021ee4c
mov edx, dword [ebp - 0x194]
shl edx, 4
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax + 0x28]
cmp dword [ecx + edx + 0xc], 0
je 0x1021ee47
mov edx, dword [ebp - 0x194]
shl edx, 4
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax + 0x28]
movzx edx, word [ecx + edx + 0xa]
mov eax, dword [ebp - 0x194]
shl eax, 4
mov ecx, dword [ebp - 0x180]
mov ecx, dword [ecx + 0x28]
movzx eax, word [ecx + eax + 6]
add edx, eax
push edx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x28]
push edx
call fcn.1021f520
add esp, 8
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x28], eax
jmp 0x1021edc8
jmp 0x1021ed52
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
and eax, 1
je 0x1021ee6d
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x28]
add edx, 1
mov dword [ebp - 0x23c], edx
jmp 0x1021ee82
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x28]
push ecx
call fcn.1021d030
add esp, 4
mov dword [ebp - 0x23c], eax
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x23c]
mov dword [edx + 0x28], eax
mov ecx, dword [ebp + 0xc]
cvtsi2ss xmm0, dword [ecx + 0x28]
movss xmm1, dword [0x10333068]
divss xmm1, xmm0
push ecx
movss dword [esp], xmm1
mov edx, dword [ebp + 0xc]
cvtsi2ss xmm0, dword [edx + 0x24]
movss xmm1, dword [0x10333068]
divss xmm1, xmm0
push ecx
movss dword [esp], xmm1
lea ecx, [ebp - 0x340]
call fcn.1017f430
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x30], edx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
imul eax, dword [edx + 0x28]
push eax
call fcn.101d6170
add esp, 4
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x1c], eax
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [edx + 0x24]
imul ecx, dword [eax + 0x28]
push ecx
push 0
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x1c]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x1b0], 0
jmp 0x1021ef31
mov ecx, dword [ebp - 0x1b0]
add ecx, 1
mov dword [ebp - 0x1b0], ecx
mov edx, dword [ebp - 0x1b0]
cmp edx, dword [ebp - 0x1a0]
jge 0x1021f423
mov eax, dword [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x188]
cmp dword [ecx + 0x38], 0
jne 0x1021ef69
jmp 0x1021ef22
mov edx, dword [ebp + 0xc]
add edx, 0x54
mov dword [ebp - 0x2c0], edx
mov eax, dword [ebp - 0x1b0]
push eax
mov ecx, dword [ebp - 0x2c0]
call fcn.101eca30
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x184]
mov edx, dword [ecx + 0x74]
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x188]
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x2c8], xmm0
mov ecx, dword [ebp - 0x188]
movss xmm0, dword [ecx + 8]
movss dword [ebp - 0x2c4], xmm0
push ecx
movss xmm0, dword [ebp - 0x2c4]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2c8]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x184]
push edx
mov eax, dword [ebp - 0x214]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10211d50
add esp, 0x14
mov edx, dword [ebp - 0x184]
movss xmm0, dword [edx + 0x28]
movss dword [ebp - 0x2d0], xmm0
mov eax, dword [ebp - 0x214]
movss xmm0, dword [eax + 0x4c]
addss xmm0, dword [0x10333060]
cvttss2si ecx, xmm0
cvtsi2ss xmm0, ecx
mov edx, dword [ebp - 0x184]
addss xmm0, dword [edx + 0x2c]
movss dword [ebp - 0x2d4], xmm0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x1b4], 0
jmp 0x1021f060
mov edx, dword [ebp - 0x1b4]
add edx, 1
mov dword [ebp - 0x1b4], edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x1b4]
cmp ecx, dword [eax + 0x38]
jge 0x1021f411
mov edx, dword [ebp - 0x188]
add edx, 0x48
mov dword [ebp - 0x2cc], edx
mov eax, dword [ebp - 0x1b4]
push eax
mov ecx, dword [ebp - 0x2cc]
call fcn.101ec990
mov dword [ebp - 0x1d4], eax
mov ecx, dword [ebp - 0x1b4]
shl ecx, 4
mov edx, dword [ebp - 0x188]
add ecx, dword [edx + 0x28]
mov dword [ebp - 0x240], ecx
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x240]
movzx edx, word [ecx + 8]
add edx, dword [ebp - 0x244]
mov dword [ebp - 0x20c], edx
mov eax, dword [ebp - 0x240]
movzx ecx, word [eax + 0xa]
add ecx, dword [ebp - 0x244]
mov dword [ebp - 0x224], ecx
mov edx, dword [ebp - 0x1d4]
mov eax, dword [edx]
mov dword [ebp - 0x24c], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x24]
mov dword [ebp - 0x248], edx
mov eax, dword [ebp - 0x1d4]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x200], ecx
mov edx, dword [ebp - 0x224]
imul edx, dword [ebp - 0x248]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x1c]
add ecx, edx
add ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x204], ecx
mov edx, dword [ebp - 0x16c]
mov eax, dword [edx + 4]
mov dword [ebp - 0x1fc], eax
jmp 0x1021f17a
mov ecx, dword [ebp - 0x1fc]
sub ecx, 1
mov dword [ebp - 0x1fc], ecx
mov edx, dword [ebp - 0x204]
add edx, dword [ebp - 0x248]
mov dword [ebp - 0x204], edx
mov eax, dword [ebp - 0x200]
add eax, dword [ebp - 0x24c]
mov dword [ebp - 0x200], eax
cmp dword [ebp - 0x1fc], 0
jle 0x1021f1a2
mov ecx, dword [ebp - 0x24c]
push ecx
mov edx, dword [ebp - 0x200]
push edx
mov eax, dword [ebp - 0x204]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
jmp 0x1021f147
mov ecx, dword [ebp - 0x16c]
movss xmm0, dword [ecx + 0x10]
movss dword [ebp - 0x1cc], xmm0
mov edx, dword [ebp - 0x184]
push ecx
movss xmm0, dword [edx + 0x38]
movss dword [esp], xmm0
mov eax, dword [ebp - 0x184]
push ecx
movss xmm0, dword [eax + 0x34]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1cc]
movss dword [esp], xmm0
call fcn.1021f550
add esp, 0xc
fstp dword [ebp - 0x1d0]
movss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x208], xmm0
movss xmm0, dword [ebp - 0x1cc]
ucomiss xmm0, dword [ebp - 0x1d0]
lahf
test ah, 0x44
jnp 0x1021f288
mov ecx, dword [ebp - 0x184]
movzx edx, byte [ecx + 0x1c]
test edx, edx
je 0x1021f250
movss xmm0, dword [ebp - 0x1d0]
subss xmm0, dword [ebp - 0x1cc]
mulss xmm0, dword [0x10333060]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [ebp - 0x250], xmm0
jmp 0x1021f270
movss xmm0, dword [ebp - 0x1d0]
subss xmm0, dword [ebp - 0x1cc]
mulss xmm0, dword [0x10333060]
movss dword [ebp - 0x250], xmm0
movss xmm0, dword [ebp - 0x208]
addss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x208], xmm0
mov ecx, dword [ebp - 0x16c]
cvtsi2ss xmm0, dword [ecx + 8]
addss xmm0, dword [ebp - 0x208]
movss dword [ebp - 0x258], xmm0
mov edx, dword [ebp - 0x16c]
cvtsi2ss xmm0, dword [edx + 0xc]
addss xmm0, dword [ebp - 0x2d4]
movss dword [ebp - 0x254], xmm0
mov eax, dword [ebp - 0x16c]
cvtsi2ss xmm0, dword [eax]
addss xmm0, dword [ebp - 0x258]
movss dword [ebp - 0x2ec], xmm0
mov ecx, dword [ebp - 0x16c]
cvtsi2ss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x254]
movss dword [ebp - 0x2e8], xmm0
cvtsi2ss xmm0, dword [ebp - 0x20c]
mov edx, dword [ebp + 0xc]
cvtsi2ss xmm1, dword [edx + 0x24]
divss xmm0, xmm1
movss dword [ebp - 0x2e4], xmm0
cvtsi2ss xmm0, dword [ebp - 0x224]
mov eax, dword [ebp + 0xc]
cvtsi2ss xmm1, dword [eax + 0x28]
divss xmm0, xmm1
movss dword [ebp - 0x2e0], xmm0
mov ecx, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x20c]
add edx, dword [ecx]
cvtsi2ss xmm0, edx
mov eax, dword [ebp + 0xc]
cvtsi2ss xmm1, dword [eax + 0x24]
divss xmm0, xmm1
movss dword [ebp - 0x2dc], xmm0
mov ecx, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x224]
add edx, dword [ecx + 4]
cvtsi2ss xmm0, edx
mov eax, dword [ebp + 0xc]
cvtsi2ss xmm1, dword [eax + 0x28]
divss xmm0, xmm1
movss dword [ebp - 0x2d8], xmm0
push ecx
movss xmm0, dword [ebp - 0x1d0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2d8]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2dc]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2e0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2e4]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2e8]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x2ec]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x254]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x258]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x1d4]
movzx edx, word [ecx + 0x14]
push edx
mov ecx, dword [ebp - 0x214]
call fcn.1020ebc0
jmp 0x1021f051
mov eax, dword [ebp - 0x188]
mov dword [eax + 0x28], 0
jmp 0x1021ef22
mov dword [ebp - 0x1d8], 0
jmp 0x1021f43e
mov ecx, dword [ebp - 0x1d8]
add ecx, 1
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
cmp edx, dword [ebp - 0x278]
jge 0x1021f46b
mov eax, dword [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x278]
call fcn.101ec950
mov ecx, dword [eax]
push ecx
call fcn.101d61c0
add esp, 4
jmp 0x1021f42f
mov dword [ebp - 0x1dc], 0
jmp 0x1021f486
mov edx, dword [ebp - 0x1dc]
add edx, 1
mov dword [ebp - 0x1dc], edx
mov eax, dword [ebp - 0x1dc]
cmp eax, dword [ebp - 0x1a0]
jge 0x1021f4bb
mov ecx, dword [ebp - 0x1dc]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.1021f720
mov dword [ebp - 0x308], eax
push 0
mov ecx, dword [ebp - 0x308]
call fcn.1021f740
jmp 0x1021f477
mov edx, dword [ebp + 0xc]
push edx
call fcn.10211fb0
add esp, 4
mov byte [ebp - 0x16f], 1
lea ecx, [ebp - 0x328]
call fcn.101ec5a0
lea ecx, [ebp - 0x278]
call fcn.101ec5a0
lea ecx, [ebp - 0x314]
call fcn.101ec5a0
lea ecx, [ebp - 0x220]
call fcn.101ec5a0
lea ecx, [ebp - 0x1a0]
call fcn.101ec5a0
mov al, byte [ebp - 0x16f]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.102d9498
mov esp, ebp
pop ebp
ret