Function at 0x1039a2e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10423d58
mov eax, dword fs:[0]
push eax
sub esp, 0x394
mov eax, dword [0x104c5878]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x228], edi
mov dword [ebp - 0x234], 0
mov dword [ebp - 4], 0
mov esi, dword [edi + 0x108]
mov dword [ebp - 0x26c], esi
mov edx, dword [edi + 0x10c]
mov dword [ebp - 0x268], edx
mov ecx, dword [edi + 0x144]
mov dword [ebp - 0x264], ecx
mov eax, dword [edi + 0x148]
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x270], 0xffffffff
mov dword [ebp - 0x260], eax
mov byte [ebp - 4], 0
mov dword [ebp - 0x234], 1
mov byte [ebp - 4], 2
lea edi, [ebp - 0x2b4]
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x2b8], 0xffffffff
mov dword [ebp - 0x22c], edi
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0xffffffff
mov dword [ebp - 0x2ac], esi
mov dword [ebp - 0x2a8], edx
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x2a0], eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x29c], 0x10479970
mov dword [ebp - 0x298], 2
mov byte [ebp - 4], 2
mov dword [ebp - 0x234], 3
mov byte [ebp - 4], 6
lea eax, [ebp - 0x360]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x2bc]
mov dword [ebp - 0x360], eax
mov eax, dword [ebp - 0x2b8]
mov dword [ebp - 0x35c], eax
lea eax, [ebp - 0x358]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x358], eax
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x354], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x34c], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x348], eax
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0xffffffff
mov dword [ebp - 0x344], eax
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x29c]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x33c], eax
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x338], str.hash
mov dword [ebp - 0x334], 6
mov byte [ebp - 4], 6
mov dword [ebp - 0x234], 7
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x314]
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], 0xffffffff
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x368]
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x364]
mov dword [ebp - 0x310], eax
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x30c], eax
mov eax, dword [ebp - 0x35c]
mov dword [ebp - 0x308], eax
lea eax, [ebp - 0x304]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp - 0x358]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x354]
mov dword [ebp - 0x300], eax
mov eax, dword [ebp - 0x350]
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x34c]
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp - 0x348]
mov dword [ebp - 0x2f4], eax
mov eax, dword [ebp - 0x344]
mov dword [ebp - 0x2f0], eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x340]
mov dword [ebp - 0x2ec], eax
mov eax, dword [ebp - 0x33c]
mov dword [ebp - 0x2e8], eax
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x2e4], eax
mov eax, dword [ebp - 0x334]
mov dword [ebp - 0x2e0], eax
mov byte [ebp - 4], 0x12
mov edi, dword [ebp - 0x228]
mov eax, dword [edi + 0x168]
mov dword [ebp - 0x2dc], eax
mov eax, dword [edi + 0x16c]
mov dword [ebp - 0x2d8], eax
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x234], 0xf
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0
test eax, eax
jns 0x1039a682
mov eax, dword [ebp - 0x308]
test eax, eax
jns 0x1039a66b
mov eax, dword [ebp - 0x300]
test eax, eax
jns 0x1039a654
mov eax, dword [ebp - 0x2f8]
test eax, eax
je 0x1039a63b
lea ecx, [eax - 1]
jmp 0x1039a63d
xor ecx, ecx
mov eax, dword [ebp - 0x2f0]
test eax, eax
je 0x1039a64a
dec eax
jmp 0x1039a64c
xor eax, eax
add eax, ecx
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x2e8]
test ecx, ecx
je 0x1039a661
dec ecx
jmp 0x1039a663
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x308], eax
mov ecx, dword [ebp - 0x2e0]
test ecx, ecx
je 0x1039a678
dec ecx
jmp 0x1039a67a
xor ecx, ecx
add eax, ecx
mov dword [ebp - 0x310], eax
mov ecx, dword [ebp - 0x2d8]
test ecx, ecx
je 0x1039a68f
dec ecx
jmp 0x1039a691
xor ecx, ecx
lea esi, [ecx + eax]
lea eax, [esi + 1]
mov dword [ebp - 0x318], esi
mov ecx, eax
mov dword [ebp - 0x238], eax
call fcn.103675e0
mov dword [ebp - 0x284], eax
mov byte [esi + eax], 0
mov eax, dword [ebp - 0x2f8]
test eax, eax
je 0x1039a6c1
dec eax
jmp 0x1039a6c3
xor eax, eax
mov esi, dword [ebp - 0x284]
push eax
push dword [ebp - 0x2fc]
push esi
call fcn.103ce0b0
mov eax, dword [ebp - 0x2f8]
add esp, 0xc
test eax, eax
je 0x1039a6e6
dec eax
jmp 0x1039a6e8
xor eax, eax
mov ecx, dword [ebp - 0x2f0]
mov dword [ebp - 0x220], eax
test ecx, ecx
je 0x1039a6fb
dec ecx
jmp 0x1039a6fd
xor ecx, ecx
push ecx
push dword [ebp - 0x2f4]
add eax, esi
push eax
call fcn.103ce0b0
mov ecx, dword [ebp - 0x2f0]
add esp, 0xc
test ecx, ecx
je 0x1039a71c
dec ecx
jmp 0x1039a71e
xor ecx, ecx
mov eax, dword [ebp - 0x220]
add eax, ecx
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x220], eax
test ecx, ecx
je 0x1039a739
dec ecx
jmp 0x1039a73b
xor ecx, ecx
push ecx
push dword [ebp - 0x2ec]
add eax, esi
push eax
call fcn.103ce0b0
mov ecx, dword [ebp - 0x2e8]
add esp, 0xc
mov eax, dword [ebp - 0x220]
test ecx, ecx
je 0x1039a766
dec eax
add eax, ecx
mov dword [ebp - 0x220], eax
mov ecx, dword [ebp - 0x2e0]
test ecx, ecx
je 0x1039a773
dec ecx
jmp 0x1039a775
xor ecx, ecx
push ecx
push dword [ebp - 0x2e4]
add eax, esi
push eax
call fcn.103ce0b0
mov ecx, dword [ebp - 0x2e0]
add esp, 0xc
test ecx, ecx
je 0x1039a794
dec ecx
jmp 0x1039a796
xor ecx, ecx
add ecx, dword [ebp - 0x220]
mov eax, dword [ebp - 0x2d8]
test eax, eax
je 0x1039a7a9
dec eax
jmp 0x1039a7ab
xor eax, eax
push eax
push dword [ebp - 0x2dc]
lea eax, [ecx + esi]
push eax
call fcn.103ce0b0
mov eax, dword [ebp - 0x238]
add esp, 0xc
xor ecx, ecx
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x294], esi
call fcn.10367720
mov byte [ebp - 4], 0x14
mov esi, 0xf
mov dword [ebp - 0x234], esi
and esi, 0xfffffff7
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x31c]
call fcn.10367720
mov dword [ebp - 0x31c], 0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x314]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x314]
call fcn.10367720
mov dword [ebp - 0x314], 0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x30c]
call fcn.10367720
mov dword [ebp - 0x30c], 0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x304]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x304]
call fcn.10367720
and esi, 0xfffffffb
mov dword [ebp - 0x304], 0
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x368]
call fcn.10367720
mov dword [ebp - 0x368], 0
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x360]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x360]
call fcn.10367720
mov dword [ebp - 0x360], 0
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x358]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x358]
call fcn.10367720
and esi, 0xfffffffd
mov dword [ebp - 0x358], 0
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x2bc]
call fcn.10367720
mov dword [ebp - 0x2bc], 0
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x2b4]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x2b4]
call fcn.10367720
and esi, 0xfffffffe
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x234], esi
mov byte [ebp - 4], 0x27
xor ecx, ecx
call fcn.10367720
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0
mov byte [ebp - 4], 0x29
mov dword [ebp - 0x214], 0
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x20c], 0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x204]
call fcn.103586d0
mov byte [ebp - 4], 0x2d
mov esi, dword [ebp - 0x284]
test esi, esi
je 0x1039a9f2
cmp dword [ebp - 0x238], 2
mov eax, esi
jae 0x1039a9f7
mov eax, 0x104571a6
sub esp, 8
push 0
push 0
push ecx
push eax
lea ecx, [ebp - 0x21c]
call fcn.1035c920
test al, al
jne 0x1039aa79
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x204]
call fcn.10358ae0
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x210]
call fcn.10367720
mov dword [ebp - 0x210], 0
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x21c]
test ecx, ecx
je 0x1039aa64
call fcn.10367720
mov dword [ebp - 0x21c], 0
mov dword [ebp - 4], 0xffffffff
mov ecx, esi
call fcn.10367720
xor al, al
jmp 0x1039b55f
cmp dword [ebp - 0x78], 0xc8
je 0x1039aa93
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x21c]
call fcn.1036f560
jmp 0x1039aa64
mov ecx, dword [ebp - 0xe8]
mov edx, dword [ebp - 0xe0]
cmp ecx, edx
jbe 0x1039aaad
mov eax, dword [ebp - 0xf4]
add eax, edx
jmp 0x1039aaaf
xor eax, eax
sub ecx, dword [ebp - 0xe4]
sub ecx, edx
mov dword [ebp - 0x240], eax
lea eax, [ecx + 1]
mov dword [ebp - 0x23c], eax
lea ecx, [ebp - 0x330]
lea eax, [ebp - 0x240]
push eax
call fcn.10362550
push 0
lea eax, [ebp - 0x240]
mov dword [ebp - 0x254], 0
push eax
lea eax, [ebp - 0x25c]
mov dword [ebp - 0x250], 0
push eax
lea eax, [ebp - 0x378]
mov dword [ebp - 0x25c], str.must
push eax
mov dword [ebp - 0x258], 5
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
call fcn.10362cf0
push eax
lea ecx, [ebp - 0x248]
call fcn.10362790
push 0
lea eax, [ebp - 0x240]
mov dword [ebp - 0x25c], str.mustdelaylower
push eax
lea eax, [ebp - 0x25c]
mov dword [ebp - 0x258], 0xf
push eax
lea eax, [ebp - 0x378]
mov dword [ebp - 0x240], 0
push eax
lea ecx, [ebp - 0x330]
mov dword [ebp - 0x23c], 0
call fcn.10362cf0
push eax
lea ecx, [ebp - 0x398]
call fcn.10362790
push 0
lea eax, [ebp - 0x240]
mov dword [ebp - 0x25c], str.mustdelayupper
push eax
lea eax, [ebp - 0x25c]
mov dword [ebp - 0x258], 0xf
push eax
lea eax, [ebp - 0x280]
mov dword [ebp - 0x240], 0
push eax
lea ecx, [ebp - 0x330]
mov dword [ebp - 0x23c], 0
call fcn.10362cf0
push eax
lea ecx, [ebp - 0x378]
call fcn.10362790
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x248]
call fcn.103628d0
test al, al
je 0x1039b0ab
lea eax, [edi + 0x194]
nop dword [eax + eax]
mov esi, dword [eax]
lea ecx, [ebp - 0x328]
push ecx
lea ecx, [ebp - 0x320]
push ecx
mov ecx, eax
call fcn.103a3e00
cmp dword [eax], esi
jne 0x1039b08b
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x254]
call fcn.103622d0
lea eax, [ebp - 0x25c]
mov dword [ebp - 0x25c], 0
push eax
lea ecx, [ebp - 0x398]
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
call fcn.103628d0
test al, al
je 0x1039aea2
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0x378]
call fcn.103628d0
test al, al
je 0x1039aea2
lea eax, [ebp - 0x388]
push eax
lea ecx, [ebp - 0x25c]
call fcn.103622d0
lea eax, [ebp - 0x380]
push eax
lea ecx, [ebp - 0x240]
call fcn.103622d0
push dword [ebp - 0x37c]
lea ecx, [ebp - 0x274]
push dword [ebp - 0x380]
push dword [ebp - 0x384]
push dword [ebp - 0x388]
call fcn.103a4190
mov esi, eax
mov edx, dword [esi + 0x10]
movzx ecx, dx
imul eax, ecx, 0x9069
mov ecx, dword [esi + 0x14]
shr edx, 0x10
add eax, edx
mov dword [ebp - 0x220], eax
mov dword [esi + 0x10], eax
movzx eax, cx
imul edi, eax, 0x4650
shr ecx, 0x10
add edi, ecx
mov dword [esi + 0x14], edi
mov eax, dword [esi + 8]
mov dword [ebp - 0x288], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x278], eax
mov eax, dword [esi]
mov dword [ebp - 0x238], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x24c], eax
lea eax, [ebp - 0x390]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
push 0
push 0x2710
push dword [ebp - 0x38c]
push dword [ebp - 0x390]
call fcn.103b7330
push 0
push 0x1518
push 0
push 0x708
lea ecx, [ebp - 0x274]
mov dword [ebp - 0x22c], edx
mov esi, eax
call fcn.103a4190
sub esp, 0x18
mov edx, dword [ebp - 0x278]
mov ecx, esp
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
movq xmm0, qword [eax + 0x10]
mov eax, dword [ebp - 0x220]
shl eax, 0x10
add eax, edi
movq qword [ecx + 0x10], xmm0
mov ecx, dword [ebp - 0x288]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
sub ecx, dword [ebp - 0x238]
sbb edx, dword [ebp - 0x24c]
addsd xmm0, qword [eax*8 + 0x1047c750]
movsd qword [ebp - 0x224], xmm0
call fcn.103f3bc0
movsd xmm1, qword [ebp - 0x224]
mulsd xmm1, xmm0
mov edx, dword [ebp - 0x24c]
mov ecx, dword [ebp - 0x238]
divsd xmm1, qword [0x1047c0c0]
movsd qword [ebp - 0x224], xmm1
call fcn.103f3bc0
addsd xmm0, qword [ebp - 0x224]
call fcn.103f3a6f
add eax, esi
adc edx, dword [ebp - 0x22c]
lea ecx, [ebp - 0x368]
mov edi, dword [ebp - 0x324]
sub eax, 0x30b66800
mov esi, dword [ebp - 0x328]
sbb edx, 0xa97
push edx
push eax
push edi
push esi
call fcn.10394c60
mov dword [ebp - 0x2d0], edi
add esp, 0x28
mov edi, dword [ebp - 0x228]
mov dword [ebp - 0x2d4], esi
movups xmm0, xmmword [eax]
lea ecx, [edi + 0x18c]
movups xmmword [ebp - 0x2cc], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x2bc], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x2ac], xmm0
movq xmm0, qword [eax + 0x30]
lea eax, [ebp - 0x2d4]
push eax
movq qword [ebp - 0x29c], xmm0
call fcn.103a4990
push eax
add eax, 0x10
push eax
lea eax, [ebp - 0x3a0]
jmp 0x1039b07e
mov ecx, dword [edi + 0xf0]
movzx eax, cx
imul edx, eax, 0x9069
shr ecx, 0x10
mov esi, dword [ebp - 0x228]
add edx, ecx
mov ecx, dword [edi + 0xf4]
movzx eax, cx
mov dword [edi + 0xf0], edx
imul eax, eax, 0x4650
shr ecx, 0x10
shl edx, 0x10
add eax, ecx
add edx, eax
mov dword [edi + 0xf4], eax
mov eax, dword [ebp - 0x228]
mov edi, dword [edi + 0xe0]
mov esi, dword [esi + 0xe4]
movd xmm0, edx
mov ecx, dword [eax + 0xe8]
cvtdq2pd xmm0, xmm0
shr edx, 0x1f
sub ecx, edi
addsd xmm0, qword [edx*8 + 0x1047c750]
mov edx, dword [eax + 0xec]
sbb edx, esi
movsd qword [ebp - 0x230], xmm0
call fcn.103f3bc0
movsd xmm1, qword [ebp - 0x230]
mov edx, esi
mulsd xmm1, xmm0
mov ecx, edi
divsd xmm1, qword [0x1047c0c0]
movsd qword [ebp - 0x230], xmm1
call fcn.103f3bc0
addsd xmm0, qword [ebp - 0x230]
call fcn.103f3a6f
mov esi, eax
mov dword [ebp - 0x274], 0x708
mov edi, edx
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0x1518
mov dword [ebp - 0x268], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
je 0x1039afa0
cmp eax, 0x464fffff
je 0x1039afa0
mov ecx, eax
imul ecx, eax
cmp ecx, 0x9068ffff
jne 0x1039afa5
add eax, 0x52897528
mov dword [ebp - 0x260], eax
imul eax, eax
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
movups xmm0, xmmword [ebp - 0x274]
sub esp, 0x18
mov eax, esp
push 0
push 0x2710
push dword [ebp - 0x27c]
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x264]
push dword [ebp - 0x280]
movq qword [eax + 0x10], xmm0
call fcn.103b7330
add eax, esi
lea ecx, [ebp - 0x368]
mov esi, dword [ebp - 0x328]
adc edx, edi
mov edi, dword [ebp - 0x324]
sub eax, 0x30b66800
sbb edx, 0xa97
push edx
push eax
push edi
push esi
call fcn.10394c60
mov dword [ebp - 0x2d0], edi
add esp, 0x28
mov edi, dword [ebp - 0x228]
mov dword [ebp - 0x2d4], esi
movups xmm0, xmmword [eax]
lea ecx, [edi + 0x18c]
movups xmmword [ebp - 0x2cc], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x2bc], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x2ac], xmm0
movq xmm0, qword [eax + 0x30]
lea eax, [ebp - 0x2d4]
push eax
movq qword [ebp - 0x29c], xmm0
call fcn.103a4990
push eax
add eax, 0x10
push eax
lea eax, [ebp - 0x370]
push ecx
push eax
lea ecx, [edi + 0x18c]
call fcn.103a4a40
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x248]
call fcn.103628d0
test al, al
lea eax, [edi + 0x194]
jne 0x1039ac10
push 0
lea eax, [ebp - 0x248]
mov dword [ebp - 0x280], str.tmlmt
push eax
lea eax, [ebp - 0x280]
mov dword [ebp - 0x27c], 6
push eax
lea eax, [ebp - 0x370]
mov dword [ebp - 0x248], 0
push eax
lea ecx, [ebp - 0x330]
mov dword [ebp - 0x244], 0
call fcn.10362cf0
push eax
lea ecx, [ebp - 0x248]
call fcn.10362790
lea eax, [ebp - 0x254]
push eax
call fcn.103628d0
test al, al
je 0x1039b2eb
lea esi, [edi + 0x194]
mov dword [ebp - 0x238], esi
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x254]
call fcn.103622d0
mov edi, dword [esi]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x320]
mov ecx, esi
push eax
call fcn.103a3e00
mov ecx, dword [ebp - 0x228]
add ecx, 0x19c
mov dword [ebp - 0x22c], ecx
cmp dword [eax], edi
jne 0x1039b29f
mov esi, dword [ecx]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.103a3e00
cmp dword [eax], esi
jne 0x1039b299
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x254]
call fcn.103622d0
mov dword [ebp - 0x274], 0x4b0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0x960
mov dword [ebp - 0x268], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
je 0x1039b1d9
cmp eax, 0x464fffff
je 0x1039b1d9
mov ecx, eax
imul ecx, eax
cmp ecx, 0x9068ffff
jne 0x1039b1de
add eax, 0x52897528
movups xmm0, xmmword [ebp - 0x274]
mov edi, dword [ebp - 0x220]
lea ecx, [ebp - 0x368]
mov esi, dword [ebp - 0x224]
sub esp, 0x18
mov dword [ebp - 0x260], eax
imul eax, eax
mov dword [ebp - 0x264], eax
mov eax, esp
sub esp, 8
movups xmmword [eax], xmm0
push edi
movq xmm0, qword [ebp - 0x264]
push esi
movq qword [eax + 0x10], xmm0
call fcn.10394d00
mov dword [ebp - 0x2d4], esi
add esp, 0x28
mov esi, dword [ebp - 0x228]
mov dword [ebp - 0x2d0], edi
movups xmm0, xmmword [eax]
lea ecx, [esi + 0x18c]
movups xmmword [ebp - 0x2cc], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x2bc], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x2ac], xmm0
movq xmm0, qword [eax + 0x30]
lea eax, [ebp - 0x2d4]
push eax
movq qword [ebp - 0x29c], xmm0
call fcn.103a4990
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [esi + 0x18c]
call fcn.103a4a40
mov esi, dword [ebp - 0x238]
jmp 0x1039b2d1
mov esi, dword [ebp - 0x238]
lea eax, [ebp - 0x224]
mov ecx, esi
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.103a3e00
cmp dword [eax], edi
jne 0x1039b2d1
mov ecx, dword [ebp - 0x22c]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.103a3e00
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x248]
call fcn.103628d0
test al, al
jne 0x1039b121
push 0
lea eax, [ebp - 0x248]
mov dword [ebp - 0x280], 0x104799f4
push eax
lea eax, [ebp - 0x280]
mov dword [ebp - 0x27c], 4
push eax
lea eax, [ebp - 0x370]
mov dword [ebp - 0x248], 0
push eax
lea ecx, [ebp - 0x330]
mov dword [ebp - 0x244], 0
call fcn.10362cf0
push eax
lea ecx, [ebp - 0x248]
call fcn.10362790
lea eax, [ebp - 0x254]
push eax
call fcn.103628d0
test al, al
je 0x1039b53c
mov esi, dword [ebp - 0x228]
lea edi, [esi + 0x194]
mov dword [ebp - 0x22c], edi
nop word [eax + eax]
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x254]
call fcn.103622d0
mov edi, dword [edi]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x320]
push eax
lea ecx, [esi + 0x194]
call fcn.103a3e00
lea ecx, [esi + 0x19c]
mov dword [ebp - 0x24c], ecx
cmp dword [eax], edi
jne 0x1039b4e0
mov esi, dword [ecx]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.103a3e00
cmp dword [eax], esi
jne 0x1039b4e0
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x254]
call fcn.103622d0
mov dword [ebp - 0x274], 0x4b0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0x960
mov dword [ebp - 0x268], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
je 0x1039b426
cmp eax, 0x464fffff
je 0x1039b426
mov ecx, eax
imul ecx, eax
cmp ecx, 0x9068ffff
jne 0x1039b42b
add eax, 0x52897528
movups xmm0, xmmword [ebp - 0x274]
mov edi, dword [ebp - 0x220]
lea ecx, [ebp - 0x368]
mov esi, dword [ebp - 0x224]
sub esp, 0x18
mov dword [ebp - 0x260], eax
imul eax, eax
mov dword [ebp - 0x264], eax
mov eax, esp
sub esp, 8
movups xmmword [eax], xmm0
push edi
movq xmm0, qword [ebp - 0x264]
push esi
movq qword [eax + 0x10], xmm0
call fcn.10394da0
mov dword [ebp - 0x2d4], esi
add esp, 0x28
mov esi, dword [ebp - 0x228]
mov dword [ebp - 0x2d0], edi
movups xmm0, xmmword [eax]
lea ecx, [esi + 0x18c]
movups xmmword [ebp - 0x2cc], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x2bc], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x2ac], xmm0
movq xmm0, qword [eax + 0x30]
lea eax, [ebp - 0x2d4]
push eax
movq qword [ebp - 0x29c], xmm0
call fcn.103a4990
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [esi + 0x18c]
call fcn.103a4a40
jmp 0x1039b516
mov ecx, dword [ebp - 0x22c]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.103a3e00
cmp dword [eax], edi
jne 0x1039b516
mov ecx, dword [ebp - 0x24c]
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x238]
push eax
call fcn.103a3e00
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x248]
call fcn.103628d0
mov esi, dword [ebp - 0x228]
lea edi, [esi + 0x194]
test al, al
jne 0x1039b370
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x21c]
call fcn.1036f560
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x284]
call fcn.10367720
mov al, 1
mov dword [ebp - 0x294], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.103b6385
mov esp, ebp
pop ebp
ret