Function at 0x102818d0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x348
mov eax, dword [0x104d5404]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push eax
call fcn.10275720
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.1017ddb0
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.1017ddb0
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.10270920
lea ecx, [ebp - 0x1a0]
call fcn.1024e220
lea ecx, [ebp - 0x220]
call fcn.1024e220
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x54]
push edx
lea ecx, [ebp - 0x1a0]
call fcn.10283080
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x3c]
push ecx
lea ecx, [ebp - 0x220]
call fcn.10280600
lea ecx, [ebp - 0x1a0]
call fcn.102830c0
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.10280780
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 0x102819fa
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 0x10281c77
mov ecx, dword [ebp - 0x1b8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
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.1024fbc0
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 0x10281a6e
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax + 0x74]
call fcn.10250900
mov edx, dword [ebp - 0x15c]
mov dword [edx + 0x30], 0xffffffff
mov dword [ebp - 0x1bc], 0
jmp 0x10281a96
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 0x10281aec
mov eax, dword [ebp - 0x15c]
cmp dword [eax + 0x30], 0xffffffff
jne 0x10281aec
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.1024fae0
mov ecx, dword [ebp - 0x174]
mov edx, dword [ecx + 0x74]
cmp edx, dword [eax]
jne 0x10281aea
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x1bc]
mov dword [eax + 0x30], ecx
jmp 0x10281a87
mov edx, dword [ebp - 0x15c]
cmp dword [edx + 0x30], 0xffffffff
jne 0x10281b20
mov byte [ebp - 0x16d], 0
lea ecx, [ebp - 0x220]
call fcn.1024f730
lea ecx, [ebp - 0x1a0]
call fcn.1024f730
mov al, byte [ebp - 0x16d]
jmp 0x10282dab
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.10280990
movzx eax, al
test eax, eax
jne 0x10281b69
mov byte [ebp - 0x16e], 0
lea ecx, [ebp - 0x220]
call fcn.1024f730
lea ecx, [ebp - 0x1a0]
call fcn.1024f730
mov al, byte [ebp - 0x16e]
jmp 0x10282dab
mov ecx, dword [ebp - 0x15c]
mov edx, dword [ecx + 0x30]
push edx
lea ecx, [ebp - 0x220]
call fcn.1024fb80
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x174]
cmp dword [eax + 0x30], 0
je 0x10281ba1
mov ecx, dword [ebp - 0x174]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x25c], edx
jmp 0x10281baf
mov ecx, dword [ebp + 0xc]
call fcn.10270bb0
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 0x10281bde
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 0x10281c3a
mov eax, 2
shl eax, 0
mov ecx, dword [ebp - 0x1c0]
movzx edx, word [ecx + eax]
test edx, edx
je 0x10281c3a
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.10282dc0
add esp, 8
mov edx, dword [ebp - 0x15c]
mov dword [edx + 0x34], eax
jmp 0x10281bcf
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.10282dc0
add esp, 8
mov ecx, dword [ebp - 0x1e0]
mov dword [ecx + 4], eax
jmp 0x102819eb
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1e4], 0
jmp 0x10281c9c
mov edx, dword [ebp - 0x1e4]
add edx, 1
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0x1a0]
jge 0x10281ec4
mov ecx, dword [ebp - 0x1e4]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x30]
push eax
lea ecx, [ebp - 0x220]
call fcn.1024fb80
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.1027ff40
mov ecx, dword [ebp - 0x178]
add ecx, 0xc
call fcn.10251050
movzx ecx, al
test ecx, ecx
je 0x10281d44
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.1027ff40
mov edx, dword [ebp - 0x164]
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x18c], eax
jmp 0x10281d64
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 0x10281ebf
mov eax, 2
shl eax, 0
mov ecx, dword [ebp - 0x18c]
movzx edx, word [ecx + eax]
test edx, edx
je 0x10281ebf
mov eax, 2
imul ecx, eax, 0
mov edx, dword [ebp - 0x18c]
movzx eax, word [edx + ecx]
mov dword [ebp - 0x17c], eax
jmp 0x10281dc1
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 0x10281eba
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.1027fde0
movzx ecx, al
test ecx, ecx
je 0x10281e09
jmp 0x10281db2
mov edx, dword [ebp - 0x17c]
push edx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax + 0x18]
push ecx
call fcn.10355730
add esp, 8
mov dword [ebp - 0x27c], eax
cmp dword [ebp - 0x27c], 0
jne 0x10281e36
jmp 0x10281db2
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.1027ff90
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.1027ff90
mov eax, dword [ebp - 0x1f0]
add eax, 1
mov dword [ebp - 0x1f0], eax
jmp 0x10281db2
jmp 0x10281d55
jmp 0x10281c8d
mov dword [ebp - 0x1e8], 0
jmp 0x10281edf
mov ecx, dword [ebp - 0x1e8]
add ecx, 1
mov dword [ebp - 0x1e8], ecx
mov edx, dword [ebp - 0x1e8]
cmp edx, dword [ebp - 0x1a0]
jge 0x1028204a
mov eax, dword [ebp - 0x1e8]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
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.10280320
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.10200ca0
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.102800a0
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x1c4], ecx
jmp 0x10281f72
mov edx, dword [ebp - 0x1c4]
add edx, 4
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1c4]
cmp eax, dword [ebp - 0x28c]
jae 0x10282037
mov ecx, dword [ebp - 0x1c4]
mov edx, dword [ecx]
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 0
je 0x10282032
mov dword [ebp - 0x1a4], 0
jmp 0x10281fba
mov eax, dword [ebp - 0x1a4]
add eax, 1
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x1a4], 0x20
jge 0x10282032
mov edx, 1
mov ecx, dword [ebp - 0x1a4]
shl edx, cl
and edx, dword [ebp - 0x260]
je 0x1028202d
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.10280190
jmp 0x10281fab
jmp 0x10281f63
mov ecx, dword [ebp - 0x190]
add ecx, 0x3c
call fcn.102500f0
jmp 0x10281ed0
mov dword [ebp - 0x1ec], 0
jmp 0x10282065
mov edx, dword [ebp - 0x1ec]
add edx, 1
mov dword [ebp - 0x1ec], edx
mov eax, dword [ebp - 0x1ec]
cmp eax, dword [ebp - 0x220]
jge 0x10282091
mov ecx, dword [ebp - 0x1ec]
push ecx
lea ecx, [ebp - 0x220]
call fcn.1024fb80
add eax, 0xc
mov ecx, eax
call fcn.102500f0
jmp 0x10282056
lea ecx, [ebp - 0x220]
call fcn.10251010
lea ecx, [ebp - 0x314]
call fcn.1024e220
mov edx, dword [ebp - 0x1f0]
push edx
lea ecx, [ebp - 0x314]
call fcn.10280700
lea ecx, [ebp - 0x314]
call fcn.102807c0
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.1024e220
push 0x40000
call fcn.10239100
add esp, 4
mov dword [ebp - 0x294], eax
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [ebp - 0x278]
call fcn.10251480
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1a8], 0
jmp 0x10282149
mov edx, dword [ebp - 0x1a8]
add edx, 1
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a8]
cmp eax, dword [ebp - 0x1a0]
jge 0x10282497
mov ecx, dword [ebp - 0x1a8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
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.1024fbc0
mov dword [ebp - 0x268], eax
mov ecx, dword [ebp - 0x154]
cmp dword [ecx + 0x38], 0
jne 0x102821a5
jmp 0x1028213a
mov edx, dword [ebp - 0x1f4]
push edx
lea ecx, [ebp - 0x314]
call fcn.1027fd30
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 [0x103ad1dc]
lahf
test ah, 0x44
jnp 0x102821f6
mov byte [ebp - 0x155], 1
jmp 0x102821fd
mov byte [ebp - 0x155], 0
mov dl, byte [ebp - 0x155]
mov byte [ebp - 0x156], dl
movzx eax, byte [ebp - 0x156]
test eax, eax
je 0x10282234
mov ecx, dword [ebp - 0x268]
push ecx
movss xmm0, dword [ecx + 0x44]
movss dword [esp], xmm0
lea edx, [ebp - 0x104]
push edx
call fcn.10275c20
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 0x10282270
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 0x10282492
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.1024fb20
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.10280c50
mov dword [ebp - 0x2a4], eax
cmp dword [ebp - 0x2a4], 0
jne 0x102822de
jmp 0x10282261
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x2a8], ecx
mov edx, dword [ebp - 0x160]
push edx
mov ecx, dword [ebp - 0x2a8]
call fcn.10280cf0
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 0x1028235c
mov dword [ebp - 0x1ac], 0
push 0x40000
call fcn.10239100
add esp, 4
mov dword [ebp - 0x2ac], eax
lea ecx, [ebp - 0x2ac]
push ecx
lea ecx, [ebp - 0x278]
call fcn.10251480
lea ecx, [ebp - 0x278]
call fcn.10250e80
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 0x102823af
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x228], ecx
jmp 0x102823b9
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.10280da0
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 0x10282261
jmp 0x1028213a
cvtsi2ss xmm0, dword [ebp - 0x1f8]
push ecx
movss dword [esp], xmm0
call fcn.10280970
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 0x102824ec
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [edx + 0x24], ecx
jmp 0x10282571
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x103e1324]
jb 0x10282509
mov dword [ebp - 0x238], 0x1000
jmp 0x10282565
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x103e1320]
jb 0x10282526
mov dword [ebp - 0x234], 0x800
jmp 0x10282559
cvtsi2ss xmm0, dword [ebp - 0x210]
comiss xmm0, dword [0x103e131c]
jb 0x10282543
mov dword [ebp - 0x230], 0x400
jmp 0x1028254d
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.1024e220
mov eax, dword [ebp - 0x2bc]
push eax
lea ecx, [ebp - 0x328]
call fcn.10251c90
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.102811b0
add esp, 0x14
lea eax, [ebp - 0x150]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10275800
add esp, 8
mov dword [ebp - 0x1c8], 0
jmp 0x10282601
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1c8]
cmp eax, dword [ebp - 0x1a0]
jge 0x102826f1
mov ecx, dword [ebp - 0x1c8]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
mov dword [ebp - 0x180], eax
mov edx, dword [ebp - 0x180]
cmp dword [edx + 0x38], 0
jne 0x10282639
jmp 0x102825f2
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.10280fc0
add esp, 0xc
mov dword [ebp - 0x194], 0
jmp 0x10282677
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 0x102826ec
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 0x102826e7
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.10282dc0
add esp, 8
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x28], eax
jmp 0x10282668
jmp 0x102825f2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
and eax, 1
je 0x1028270d
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x28]
add edx, 1
mov dword [ebp - 0x23c], edx
jmp 0x10282722
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x28]
push ecx
call fcn.10280910
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 [0x103ad1dc]
divss xmm1, xmm0
push ecx
movss dword [esp], xmm1
mov edx, dword [ebp + 0xc]
cvtsi2ss xmm0, dword [edx + 0x24]
movss xmm1, dword [0x103ad1dc]
divss xmm1, xmm0
push ecx
movss dword [esp], xmm1
lea ecx, [ebp - 0x340]
call fcn.1017ddb0
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.10239100
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 0x102827d1
mov ecx, dword [ebp - 0x1b0]
add ecx, 1
mov dword [ebp - 0x1b0], ecx
mov edx, dword [ebp - 0x1b0]
cmp edx, dword [ebp - 0x1a0]
jge 0x10282cc3
mov eax, dword [ebp - 0x1b0]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x188]
cmp dword [ecx + 0x38], 0
jne 0x10282809
jmp 0x102827c2
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.1024fbc0
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.10275790
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 [0x103acd00]
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 0x10282900
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 0x10282cb1
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.1024fb20
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 0x10282a1a
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 0x10282a42
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 0x102829e7
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.10282df0
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 0x10282b28
mov ecx, dword [ebp - 0x184]
movzx edx, byte [ecx + 0x1c]
test edx, edx
je 0x10282af0
movss xmm0, dword [ebp - 0x1d0]
subss xmm0, dword [ebp - 0x1cc]
mulss xmm0, dword [0x103acd00]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [ebp - 0x250], xmm0
jmp 0x10282b10
movss xmm0, dword [ebp - 0x1d0]
subss xmm0, dword [ebp - 0x1cc]
mulss xmm0, dword [0x103acd00]
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.102725f0
jmp 0x102828f1
mov eax, dword [ebp - 0x188]
mov dword [eax + 0x28], 0
jmp 0x102827c2
mov dword [ebp - 0x1d8], 0
jmp 0x10282cde
mov ecx, dword [ebp - 0x1d8]
add ecx, 1
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
cmp edx, dword [ebp - 0x278]
jge 0x10282d0b
mov eax, dword [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x278]
call fcn.1024fae0
mov ecx, dword [eax]
push ecx
call fcn.10239150
add esp, 4
jmp 0x10282ccf
mov dword [ebp - 0x1dc], 0
jmp 0x10282d26
mov edx, dword [ebp - 0x1dc]
add edx, 1
mov dword [ebp - 0x1dc], edx
mov eax, dword [ebp - 0x1dc]
cmp eax, dword [ebp - 0x1a0]
jge 0x10282d5b
mov ecx, dword [ebp - 0x1dc]
push ecx
lea ecx, [ebp - 0x1a0]
call fcn.10282fc0
mov dword [ebp - 0x308], eax
push 0
mov ecx, dword [ebp - 0x308]
call fcn.10282fe0
jmp 0x10282d17
mov edx, dword [ebp + 0xc]
push edx
call fcn.102759f0
add esp, 4
mov byte [ebp - 0x16f], 1
lea ecx, [ebp - 0x328]
call fcn.1024f730
lea ecx, [ebp - 0x278]
call fcn.1024f730
lea ecx, [ebp - 0x314]
call fcn.1024f730
lea ecx, [ebp - 0x220]
call fcn.1024f730
lea ecx, [ebp - 0x1a0]
call fcn.1024f730
mov al, byte [ebp - 0x16f]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10353876
mov esp, ebp
pop ebp
ret