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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x370
mov esi, esp
mov dword [esi + 0x358], ebp
mov dword [esi + 0x35c], esp
mov dword [esi + 0x368], 0xffffffff
lea eax, [esi + 0x360]
mov dword [esi + 0x364], 0x10144200
mov ecx, dword fs:[0]
mov dword [esi + 0x360], ecx
mov dword fs:[0], eax
mov eax, 0xbc6b68cd
mov ecx, 0x939ee5ed
mov dword [esi + 0x28], ecx
mov dword [esi + 0x304], ecx
mov dword [esi + 0x24], eax
mov dword [esi + 0x300], eax
mov eax, 0xff6bb55
mov ecx, 0x9e3b7ae3
mov dword [esi + 0x30c], ecx
mov dword [esi + 0x308], eax
mov eax, 0xd01b0d9f
mov edi, 0xe7ff8684
mov dword [esi + 0x10], eax
mov ebx, 0x66b0df30
mov eax, 0x9e4f0991
lea ecx, [esi + 0x60]
mov dword [esi + 0xc], 0
mov edx, dword [esi + 0xc]
mov byte [0x105dddb4], 0
mov byte [0x105dddb5], 0
mov dword [esi + 0xc], edi
mov dword [esi + 0x64], edi
mov edx, dword [esi + 0x10]
mov dword [esi + 0x60], edx
mov dword [esi + 0x14], eax
mov dword [esi + 0x6c], eax
mov dword [esi + 0x18], ebx
mov dword [esi + 0x68], ebx
movaps xmm0, xmmword [esi + 0x300]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x300], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea ebx, [esi + 0x300]
push ebx
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d01d
mov edi, eax
cmp eax, 0xf
ja 0x1013b53e
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
lea eax, [esi + 0x150]
push edi
push ebx
push eax
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013b5b0
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x20], ecx
jb 0x1013b57a
lea eax, [ecx + 0x24]
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013b588
lea eax, [ecx + 1]
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x20]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x300]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 0
lea ecx, [esi + 0x150]
push ecx
push eax
call fcn.1013d230
add esp, 8
mov edi, eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
jb 0x1013b612
mov ecx, dword [esi + 0x150]
lea ebx, [eax + 1]
cmp ebx, 0x1000
jb 0x1013b608
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov ebx, eax
mov ecx, edx
push ebx
push ecx
call fcn.101ac81b
add esp, 8
test edi, edi
lea ebx, [esi + 0x150]
je 0x1013cff5
mov eax, 0xa97a61cf
mov ecx, 0xe78cf4e1
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
xor eax, eax
mov ecx, ebx
mov edi, dword [esi + 0x14]
mov dword [esi + 0x6c], edi
mov edx, dword [esi + 0x18]
mov dword [esi + 0x68], edx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov dword [esi + 0x15c], edi
mov dword [esi + 0x158], edx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013b6cd
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013b756
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x20], ecx
jb 0x1013b713
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013b72b
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x20]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 1
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e92c], eax
mov ecx, dword [esi + 0x164]
cmp ecx, 0x10
lea ebx, [esi + 0x150]
jb 0x1013b7c0
mov eax, dword [esi + 0x150]
lea edi, [ecx + 1]
cmp edi, 0x1000
jb 0x1013b7b1
mov edx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, edx
cmp eax, 0x20
jae 0x1013d018
add ecx, 0x24
mov edi, ecx
mov eax, edx
push edi
push eax
call fcn.101ac81b
add esp, 8
mov eax, dword [0x1058e92c]
test eax, eax
je 0x1013b7fc
mov eax, dword [eax + 0x148]
mov dword [0x1058e928], eax
test eax, eax
je 0x1013b7fc
mov byte [0x105dddb4], 1
add eax, 0x4f4
mov dword [esi + 0x368], 0xffffffff
push fcn.10005e10
push 0x10138e60
push eax
call fcn.10085040
add esp, 0xc
mov eax, 0xb56962dc
mov ecx, 0xe796f3c3
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
xor eax, eax
mov ecx, ebx
mov edi, dword [esi + 0x14]
mov dword [esi + 0x6c], edi
mov edx, dword [esi + 0x18]
mov dword [esi + 0x68], edx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov dword [esi + 0x15c], edi
mov dword [esi + 0x158], edx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013b8b0
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
mov dword [esi + 0x368], 2
jmp 0x1013b92f
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
mov dword [esi + 0x368], 0xffffffff
cmp ecx, 0xfff
mov dword [esi + 0x20], ecx
jb 0x1013b8f6
lea eax, [ecx + 0x24]
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013b904
lea eax, [ecx + 1]
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x20]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 2
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e930], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013b994
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013b98a
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xb56962dc
mov ecx, 0x8c9ce7d4
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x15d5b851
mov ecx, 0x9e4f0991
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
xor eax, eax
mov ecx, ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013ba4b
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013bad4
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x20], ecx
jb 0x1013ba91
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013baa9
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x20]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 3
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e934], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
jb 0x1013bb33
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013bb29
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, dword [esi + 0x28]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x60], eax
mov eax, 0x12e3bb55
mov ecx, 0xf92e7bfe
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x89ba38c4
mov ecx, 0x6b4381f6
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x1c], eax
mov ebx, 0x82e193b2
mov edi, 0xc9b9a6b3
mov eax, 0x6b4381f6
mov edx, 0x89ba38a1
mov dword [esi + 0x24], eax
xor eax, eax
lea ecx, [esi + 0x150]
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x70], eax
mov dword [esi + 0x7c], edi
mov dword [esi + 0x78], ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x164], eax
mov dword [esi + 0x30], edx
mov dword [esi + 0x160], edx
mov dword [esi + 0x20], edi
mov dword [esi + 0x16c], edi
mov dword [esi + 0x28], ebx
mov dword [esi + 0x168], ebx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [ecx + 0x10]
movaps xmmword [esi + 0x70], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013bc59
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
lea ebx, [esi + 0x150]
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013bce2
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x34], ecx
jb 0x1013bc9f
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013bcb7
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x34]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 4
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e93c], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013bd47
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013bd3d
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xa27e7eca
mov ecx, 0x928fe8cd
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x14d58c44
mov ecx, 0xfb2c60e7
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
xor eax, eax
mov ecx, ebx
mov eax, dword [esi + 0x24]
mov dword [esi + 0x74], eax
mov ebx, dword [esi + 0x30]
mov dword [esi + 0x70], ebx
mov edi, dword [esi + 0x20]
mov dword [esi + 0x7c], edi
mov edx, dword [esi + 0x28]
mov dword [esi + 0x78], edx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x164], eax
mov dword [esi + 0x160], ebx
mov dword [esi + 0x16c], edi
mov dword [esi + 0x168], edx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [ecx + 0x10]
movaps xmmword [esi + 0x70], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013be43
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
lea ebx, [esi + 0x150]
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013becc
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x34], ecx
jb 0x1013be89
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013bea1
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x34]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 5
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e940], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013bf31
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013bf27
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xa36868d2
mov ecx, 0xa59ae1e5
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x3e3ac45
mov ecx, 0xfd267fe3
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x70], eax
xor eax, eax
mov ecx, ebx
mov edi, dword [esi + 0x20]
mov dword [esi + 0x7c], edi
mov edx, dword [esi + 0x28]
mov dword [esi + 0x78], edx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x164], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x160], eax
mov dword [esi + 0x16c], edi
mov dword [esi + 0x168], edx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [ecx + 0x10]
movaps xmmword [esi + 0x70], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013c02a
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013c0b3
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x1013c070
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013c088
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 6
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e944], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013c118
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013c10e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xbb696cd2
mov ecx, 0x8b8ff2e1
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x35d5bc51
mov ecx, 0xf7397bf4
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0x89ba5dc2
mov ecx, 0x6b4381f6
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
xor eax, eax
mov ecx, ebx
mov edi, dword [esi + 0x20]
mov dword [esi + 0x7c], edi
mov edx, dword [esi + 0x28]
mov dword [esi + 0x78], edx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x164], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x160], eax
mov dword [esi + 0x16c], edi
mov dword [esi + 0x168], edx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [ecx + 0x10]
movaps xmmword [esi + 0x70], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013c215
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013c29e
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x1013c25b
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013c273
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 7
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e948], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013c303
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013c2f9
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0x837278d8
mov ecx, 0x8e89f4e1
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x66b0ba53
mov ecx, 0x9e4f0991
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
xor eax, eax
mov ecx, ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013c3ba
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013c443
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x1013c400
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013c418
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 8
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e94c], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013c4a8
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013c49e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xa06f79d7
mov ecx, 0x918de3d7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x66d5bc59
mov ecx, 0x9e4f0991
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
xor eax, eax
mov ecx, ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013c55f
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013c5e8
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x1013c5a5
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013c5bd
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 9
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e950], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013c64d
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013c643
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, 0xa7747fdd
mov ecx, 0xb48de3f7
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0xfc6ad55
mov ecx, 0x9e4f6cf2
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
xor eax, eax
mov ecx, ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x150], xmm0
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
lea eax, [esi + 0x60]
push eax
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d009
mov edi, eax
cmp eax, 0xf
ja 0x1013c704
mov dword [esi + 0x160], edi
mov dword [esi + 0x164], 0xf
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x150
jmp 0x1013c78d
mov dword [esi + 0x164], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x1013c74a
lea eax, [ecx + 0x24]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013c762
lea eax, [ecx + 1]
mov dword [esi + 0x368], 0xffffffff
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x150], ebx
mov dword [esi + 0x160], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x164], eax
push edi
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
lea ebx, [esi + 0x150]
mov byte [edi], 0
mov eax, dword [0x1058e924]
mov dword [esi + 0x368], 0xa
push ebx
push eax
call fcn.1013d230
add esp, 8
mov dword [0x1058e954], eax
mov eax, dword [esi + 0x164]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013c7f2
mov ecx, dword [esi + 0x150]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013c7e8
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov eax, dword [0x1058e940]
test eax, eax
je 0x1013c842
mov byte [0x105dddb5], 1
add eax, 0x104
mov dword [esi + 0x368], 0xffffffff
push fcn.10005e10
push 0x10138e40
push eax
call fcn.10085040
add esp, 0xc
mov eax, 0x108
add eax, dword [0x1058e940]
push fcn.10005e10
push 0x10138e50
push eax
call fcn.10085040
add esp, 0xc
mov dword [esi + 0x338], 0
mov ecx, dword [0x1058e920]
mov dword [esi + 0x368], 0xffffffff
lea eax, [esi + 0x338]
push eax
push eax
call dword [0x105ddd40]
mov dword [0x1058e958], eax
lea ecx, [eax + 8]
sub ecx, dword [eax + 8]
mov dword [0x1058e960], ecx
mov dword [esi + 0x60], eax
mov dword [esi + 0x64], eax
lea ecx, [esi + 0x60]
push 1
push ebx
call fcn.1007ee90
mov eax, dword [esi + 0x150]
mov dword [0x1058e95c], eax
mov eax, dword [0x105dddb0]
mov byte [eax], 1
mov edi, 4
nop word cs:[eax + eax]
mov ebx, dword [edi + 0x104cdac0]
push ebx
call fcn.103808a0
add esp, 4
push eax
push ebx
push dword [0x1058e95c]
call fcn.1012e9e0
add esp, 0xc
mov ecx, dword [0x105dddb0]
mov dword [ecx + edi], eax
mov eax, dword [0x105dddb0]
mov eax, dword [eax + edi]
or byte [eax + 2], 8
add edi, 4
cmp edi, 0x2c
jne 0x1013c8b0
mov edi, 0x2c
nop word cs:[eax + eax]
mov ebx, dword [edi + 0x104cdac0]
push ebx
call fcn.103808a0
add esp, 4
push eax
push ebx
push dword [0x1058e95c]
call fcn.1012e9e0
add esp, 0xc
mov ecx, dword [0x105dddb0]
mov dword [ecx + edi], eax
mov eax, dword [0x105dddb0]
mov eax, dword [eax + edi]
or byte [eax + 2], 8
add edi, 4
cmp edi, 0x7c
jne 0x1013c900
mov edi, dword [0x1058e95c]
lea eax, [edi + 8]
sub eax, dword [edi + 8]
mov ecx, dword [0x105dddb0]
mov dword [eax + 0x624], ecx
mov dword [esi + 0x330], edi
mov dword [esi + 0x334], edi
push edi
push edi
call fcn.1006e160
add esp, 8
push edi
push edi
call fcn.100513f0
add esp, 8
cmp dword [0x10588164], 0
lea ebx, [esi + 0x150]
jne 0x1013ccfa
mov eax, 0xa06f79f7
mov ecx, 0xc8d0bcf7
mov dword [esi + 0x304], ecx
mov dword [esi + 0x300], eax
mov eax, 0x1ec5b356
mov ecx, 0xb12665bf
mov dword [esi + 0x30c], ecx
mov dword [esi + 0x308], eax
mov eax, 0xedd451d6
mov ecx, 0x4430f699
mov dword [esi + 0x314], ecx
mov dword [esi + 0x310], eax
mov eax, 0xe795ebd7
mov ecx, 0xa5d8c8c1
mov dword [esi + 0x31c], ecx
mov dword [esi + 0x318], eax
mov eax, 0xc9efbcac
mov ecx, 0xcedb40e7
mov dword [esi + 0x324], ecx
mov dword [esi + 0x320], eax
mov eax, 0x78c735a0
mov ecx, 0xc3101c1
mov dword [esi + 0x32c], ecx
mov dword [esi + 0x328], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x164], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x160], eax
mov eax, dword [esi + 0x20]
mov dword [esi + 0x16c], eax
mov eax, dword [esi + 0x28]
mov dword [esi + 0x168], eax
mov eax, 0xb998c983
mov ecx, 0xa7b529b8
mov dword [esi + 0x174], ecx
mov dword [esi + 0x170], eax
mov eax, 0xb31bd4
mov ecx, 0xc3101b5
mov dword [esi + 0x17c], ecx
mov dword [esi + 0x178], eax
xor ecx, ecx
mov eax, ebx
movaps xmm0, xmmword [esi + 0x300]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x300], xmm0
movaps xmm0, xmmword [esi + 0x310]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x310], xmm0
movaps xmm0, xmmword [esi + 0x320]
xorps xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0x320], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x40], xmm0
mov dword [esi + 0x54], 0
mov dword [esi + 0x50], 0
lea ebx, [esi + 0x300]
push ebx
call fcn.103808a0
add esp, 4
test eax, eax
js 0x1013d01d
mov edi, eax
cmp eax, 0xf
ja 0x1013cb0a
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], 0xf
lea eax, [esi + 0x40]
push edi
push ebx
push eax
call fcn.10368490
add esp, 0xc
add edi, esi
add edi, 0x40
jmp 0x1013cb70
mov dword [esi + 0x54], 0xf
mov eax, edi
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x24], ecx
jb 0x1013cb43
lea eax, [ecx + 0x24]
push eax
call fcn.101ac7e6
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1013cb51
lea eax, [ecx + 1]
push eax
call fcn.101ac7e6
add esp, 4
mov ebx, eax
mov dword [esi + 0x40], ebx
mov dword [esi + 0x50], edi
mov eax, dword [esi + 0x24]
mov dword [esi + 0x54], eax
push edi
lea eax, [esi + 0x300]
push eax
push ebx
call fcn.10368490
add esp, 0xc
add edi, ebx
mov byte [edi], 0
lea eax, [esi + 0x58]
mov dword [esi + 0x368], 0xb
lea edx, [esi + 0x40]
lea ecx, [esi + 0x33c]
push eax
push edx
call fcn.10002f10
mov dword [esi + 0x33c], 0x103971c0
mov dword [esi + 0x368], 0xc
lea ecx, [esi + 0x150]
call fcn.1008ec40
mov dword [esi + 0x368], 0xd
lea ecx, [esi + 0x150]
lea eax, [esi + 0x33c]
push eax
call fcn.10090430
lea eax, [esi + 0x60]
lea ecx, [esi + 0x150]
push eax
call fcn.100901f0
lea ecx, [esi + 0x150]
call fcn.10004370
mov eax, dword [0x10588168]
cmp eax, 0x10
lea ebx, [esi + 0x150]
jb 0x1013cc28
mov ecx, dword [0x10588154]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013cc1e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
lea eax, [esi + 0x6c]
movsd xmm0, qword [eax + 0x10]
movsd qword [0x10588164], xmm0
movups xmm0, xmmword [eax]
movups xmmword [0x10588154], xmm0
mov dword [esi + 0x7c], 0
mov dword [esi + 0x80], 0xf
mov byte [esi + 0x6c], 0
lea ecx, [esi + 0x60]
call fcn.10002610
mov dword [esi + 0x33c], 0x10397258
mov eax, dword [esi + 0x354]
cmp eax, 0x10
jb 0x1013cca7
mov ecx, dword [esi + 0x340]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013cc9d
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov dword [esi + 0x350], 0
mov dword [esi + 0x354], 0xf
mov byte [esi + 0x340], 0
mov eax, dword [esi + 0x54]
cmp eax, 0x10
jb 0x1013ccfa
mov ecx, dword [esi + 0x40]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1013ccf0
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
mov dword [esi + 0x368], 0xffffffff
push 0x10588154
push ebx
call fcn.10138a50
add esp, 8
mov eax, 0xb5766cf8
mov ecx, 0xe7ff8684
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
xor eax, eax
mov ecx, ebx
mov edi, dword [esi + 0x14]
mov dword [esi + 0x6c], edi
mov ebx, dword [esi + 0x18]
mov dword [esi + 0x68], ebx
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov dword [esi + 0x15c], edi
mov dword [esi + 0x158], ebx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
lea ecx, [esi + 0x330]
lea eax, [esi + 0x60]
push eax
call fcn.1007f040
mov eax, 0xb37a61cf
mov ecx, 0xe79bcfe1
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x150], eax
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], ebx
mov dword [esi + 0x15c], edi
mov dword [esi + 0x158], ebx
xor eax, eax
lea ecx, [esi + 0x150]
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x60], xmm0
lea edi, [esi + 0x330]
mov ecx, edi
lea eax, [esi + 0x60]
push eax
push 0xffffffffffffffff
call fcn.1007f060
mov ecx, edi
push 0
push 0xffffffffffffffff
call fcn.1007f7b0
fstp qword [esi + 0x148]
fld qword [esi + 0x148]
fnstcw word [esi + 0x2e]
movzx eax, word [esi + 0x2e]
or eax, 0xc00
mov word [esi + 0x3a], ax
fldcw word [esi + 0x3a]
fistp qword [esi + 0x148]
fldcw word [esi + 0x2e]
mov edi, dword [0x105829c8]
mov ebx, 0x105829b8
cmp dword [0x105829cc], 0x10
jb 0x1013ce11
mov ebx, dword [0x105829b8]
mov eax, dword [esi + 0x148]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x14c]
mov dword [esi + 0xc], eax
call fcn.101af2a1
push edi
push ebx
push eax
lea ebx, [esi + 0x60]
push ebx
call fcn.1005f870
add esp, 0x10
cmp dword [esi + 0x74], 8
jb 0x1013ce40
mov ebx, dword [esi + 0x60]
push 0xffffffffffffffff
push 3
lea edi, [esi + 0x150]
push edi
push ebx
call fcn.101af014
cmp eax, 0x34
jg 0x1013ce6f
lea ecx, [eax - 2]
cmp ecx, 2
mov ebx, 0
jb 0x1013ce82
test eax, eax
jne 0x1013d022
mov bl, 1
jmp 0x1013ce82
cmp eax, 0x35
mov ebx, 0
je 0x1013ce82
cmp eax, 0x7b
jne 0x1013d022
mov eax, dword [esi + 0x74]
cmp eax, 8
jb 0x1013cebf
mov ecx, dword [esi + 0x60]
lea edi, [eax + eax]
add edi, 2
cmp edi, 0x1000
jb 0x1013ceb5
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1013d018
add eax, eax
add eax, 0x25
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.101ac81b
add esp, 8
test bl, bl
je 0x1013cf92
mov eax, esp
push eax
sub esp, 0x1c
mov edi, esp
xorps xmm0, xmm0
movups xmmword [edi], xmm0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov ebx, dword [0x105829c8]
mov ecx, 0x105829b8
cmp dword [0x105829cc], 0x10
jb 0x1013cefd
mov ecx, dword [0x105829b8]
test ebx, ebx
js 0x1013d01d
cmp ebx, 0xf
mov dword [esi + 0x18], eax
ja 0x1013cf1f
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], 0xf
movups xmm0, xmmword [ecx]
movups xmmword [edi], xmm0
jmp 0x1013cf7b
mov dword [esi + 0x14], ecx
mov eax, ebx
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x24], ecx
jb 0x1013cf56
lea eax, [ecx + 0x24]
push eax
call fcn.101ac7e6
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x1013cf62
lea eax, [ecx + 1]
push eax
call fcn.101ac7e6
add esp, 4
mov dword [edi], eax
mov dword [edi + 0x10], ebx
mov ecx, dword [esi + 0x24]
mov dword [edi + 0x14], ecx
inc ebx
push ebx
push dword [esi + 0x14]
push eax
call fcn.10368490
add esp, 0xc
mov eax, dword [esi + 0x10]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0xc]
mov dword [edi + 0x1c], eax
call fcn.1013a9a0
add esp, 0x20
mov esp, dword [esi + 0x18]
push 0xbb8
call fcn.10005e10
add esp, 4
cmp byte [0x10588150], 0
je 0x1013cfaf
mov byte [0x10588150], 0
mov edi, esp
push eax
sub esp, 0x2c
mov eax, esp
xorps xmm0, xmm0
movups xmmword [eax + 0x18], xmm0
mov dword [eax + 0x28], 1
mov dword [eax + 0x2c], 0xf
mov byte [eax + 0x18], 0x20
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 1
mov dword [eax + 0x14], 0xf
mov byte [eax], 0x6a
call fcn.10032c30
add esp, 0x30
mov esp, edi
mov byte [0x105ddd7c], 1
mov eax, dword [esi + 0x360]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esi + 0x368], 0xffffffff
call fcn.10002f00
call fcn.10378384
call fcn.10002f00
mov dword [esi + 0x150], eax
mov dword [esi + 0x154], 0x10582690
mov dword [esi + 0x368], 0xe
lea eax, [esi + 0x60]
push eax
push edi
push 0x1053318f
call fcn.1005bd80
add esp, 0xc
nop
push ebp
sub esp, 0x30
lea esi, [ebp - 0x36c]
mov ebp, dword [esi + 0x358]
lea ecx, [esi + 0x150]
call fcn.10002320
add esp, 0x30
pop ebp
ret