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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x510
mov esi, esp
mov dword [esi + 0x4f8], ebp
mov dword [esi + 0x4fc], esp
mov dword [esi + 0x508], 0xffffffff
lea eax, [esi + 0x500]
mov dword [esi + 0x504], 0x10037f90
mov ecx, dword fs:[0]
mov dword [esi + 0x500], ecx
mov dword fs:[0], eax
push 0x1006bb14
push 0x10064b48
call fcn.100217a0
add esp, 8
push 0x1006bb50
push 0x10066328
call fcn.100217a0
add esp, 8
push 0x1006ba30
push str.____
call fcn.100217a0
add esp, 8
call fcn.10023d90
lea edi, [esi + 0xf0]
push 0x1006bc74
push edi
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
jb 0x10034f38
mov edi, dword [esi + 0xf0]
mov dword [esi + 0x508], 0
push 0x1006ba5d
push edi
call fcn.100217a0
add esp, 8
mov eax, dword [esi + 0x104]
cmp eax, 0x10
jb 0x10034f8e
mov ecx, dword [esi + 0xf0]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x10034f84
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
cmp byte [0x1006ba5d], 0
je 0x10035bd8
cmp byte [0x1006ba5c], 0
je 0x100351ca
mov dword [esi + 0x508], 0xffffffff
mov ecx, 0x1006bda0
call fcn.10008f80
mov eax, dword [eax]
mov eax, dword [eax + 0x48]
test eax, eax
je 0x1003520e
mov dword [esi + 0x40], eax
mov dword [esi + 0x50], 0
mov dword [esi + 0x4c], 0
mov dword [esi + 0x54], 0
push 0x80
call fcn.10038f0a
add esp, 4
mov dword [esi + 0x48], eax
mov dword [esi + 0x58], 0x7d
mov dword [esi + 0x5c], 0x7f
movups xmm0, xmmword [str.04_01_00_00_00_7D_00_02_12_7A_9E_42_7D_12_D5_45_DC_C7_9A_45_92_9E_06_44_7D_12_D5_45_DC_C7_9A_45_92_9E_06_44_9D_6F_7C_40_00_00]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x10066259]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x10066269]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x10066279]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [0x10066289]
movups xmmword [eax + 0x40], xmm0
movups xmm0, xmmword [0x10066299]
movups xmmword [eax + 0x50], xmm0
movups xmm0, xmmword [0x100662a9]
movups xmmword [eax + 0x60], xmm0
movups xmm0, xmmword [0x100662b6]
movups xmmword [eax + 0x6d], xmm0
mov byte [eax + 0x7d], 0
xor edi, edi
mov dword [esi + 0x10], 0
nop word cs:[eax + eax]
inc edi
lea ecx, [edi - 1]
cmp ecx, 0x7c
jae 0x100350c4
movzx edx, byte [eax + edi - 1]
cmp dl, 0x20
je 0x10035070
movzx ecx, byte [eax + edi]
cmp cl, 0x20
je 0x10035070
mov dword [esi + 0x14], edi
mov dword [esi + 0xc], eax
mov byte [esi + 0x60], dl
mov byte [esi + 0x61], cl
mov dword [esi + 0x508], 1
lea eax, [esi + 0x60]
push eax
call fcn.10038010
add esp, 4
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0xf0], al
inc ecx
mov dword [esi + 0x10], ecx
mov eax, dword [esi + 0xc]
mov edi, dword [esi + 0x14]
jmp 0x10035070
mov dword [esi + 0x508], 1
mov ecx, 0x1006bda0
call fcn.10008f80
mov eax, dword [eax]
push dword [eax + 0x58]
call fcn.10038080
add esp, 4
mov dword [esi + 0xf8], eax
mov ecx, 0x1006bda0
call fcn.10008f80
mov eax, dword [eax]
mov eax, dword [eax + 0x48]
mov dword [esi + 0x18], eax
mov ecx, 0x1006bda0
call fcn.10008f80
mov eax, dword [eax]
mov eax, dword [eax + 0x48]
mov dword [esi + 0xc], eax
mov ecx, 0x1006bda0
call fcn.10008f80
mov eax, dword [eax]
mov ebx, dword [eax + 0x48]
mov eax, dword [esi + 0x18]
movss xmm0, dword [eax + 0x100]
movss dword [esi + 0xfc], xmm0
movss xmm0, dword [ebx + 0x108]
movss dword [esi + 0x100], xmm0
mov eax, dword [esi + 0xc]
movss xmm0, dword [eax + 0x104]
movss dword [esi + 0x104], xmm0
call dword [sym.imp.KERNEL32.dll_GetTickCount64]
mov dword [esi + 0xc], eax
mov ecx, eax
sub ecx, dword [0x1006e0d8]
mov dword [esi + 0x14], edx
sbb edx, dword [0x1006e0dc]
xor eax, eax
mov edi, 0xea5f
cmp edi, ecx
mov edi, 0
sbb edi, edx
jl 0x1003552a
push 0xffffffffffffffff
push 0xfffffc18
push edx
push ecx
call fcn.10039040
add eax, 0x3c
adc edx, 0
lea edi, [esi + 0x60]
push edx
push eax
push str.Wait__d_seconds.__You_can_reduce_the_delay_by_writing_to_support_
push edi
call fcn.100056e0
add esp, 0x10
movaps xmm0, xmmword [0x1005b220]
movups xmmword [esi + 0x20], xmm0
lea eax, [esi + 0x20]
push edi
push eax
call fcn.1001b1c0
add esp, 8
mov cl, 1
jmp 0x100355e0
mov byte [0x1006ba5d], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x100351f1
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x10036dd0
mov dword [esi + 0x508], 0xffffffff
jmp 0x10036daf
mov eax, 0x9d5c99cd
mov ecx, 0xf37503e5
mov dword [esi + 0x64], ecx
mov dword [esi + 0x60], eax
mov eax, 0x48e55d94
mov ecx, 0x14fc2589
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x68], eax
mov eax, 0xfffadca9
mov ecx, 0x5ac54ccf
mov dword [esi + 0x74], ecx
mov dword [esi + 0x70], eax
mov eax, 0x8029f804
mov ecx, 0xdf370e2d
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
mov eax, 0xe548ebc1
mov ecx, 0x470f27bc
mov dword [esi + 0x84], ecx
mov dword [esi + 0x80], eax
mov eax, 0x421bdd3c
mov ecx, 0xdd38ef72
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], eax
mov eax, 0xa36dc713
mov ecx, 0x697d0dfc
mov dword [esi + 0x94], ecx
mov dword [esi + 0x90], eax
mov eax, 0xc6ae037c
mov ecx, 0xe69a009c
mov dword [esi + 0x9c], ecx
mov dword [esi + 0x98], eax
mov eax, 0x5736a4e7
mov ecx, 0x198d5e22
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], eax
mov eax, 0x22d0cb0
mov ecx, 0xefbd78f
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], eax
mov eax, 0xca5f4108
mov ecx, 0x748cc126
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
mov eax, 0xb7c1a3e4
mov ecx, 0x22a66ba7
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
mov eax, 0x650bcbef
mov ecx, 0x4afaedb6
mov dword [esi + 0xc4], ecx
mov dword [esi + 0xc0], eax
mov eax, 0x8f63a104
mov ecx, 0x5ce9ffdf
mov edx, 0x99629ddf
mov edi, 0xf73907d2
mov dword [esi + 0xf4], edi
mov dword [esi + 0xf0], edx
mov edx, 0x4cdd59a8
mov edi, 0x10c921cb
mov dword [esi + 0xfc], edi
mov dword [esi + 0xf8], edx
mov edx, 0xfbc2dc89
mov edi, 0x5e8548fc
mov dword [esi + 0x104], edi
mov dword [esi + 0x100], edx
mov edx, 0x8413fc3a
mov edi, 0xdf170a1d
mov dword [esi + 0x10c], edi
mov dword [esi + 0x108], edx
mov edx, 0xe568eff3
mov edi, 0x433f23fe
mov dword [esi + 0x114], edi
mov dword [esi + 0x110], edx
mov edx, 0x4628d97c
mov edi, 0xd97aeb47
mov dword [esi + 0x11c], edi
mov dword [esi + 0x118], edx
mov edx, 0xa34dc73d
mov edi, 0x691c0da8
mov dword [esi + 0x124], edi
mov dword [esi + 0x120], edx
mov edx, 0xc6c9030e
mov edi, 0xe6ee00f9
mov dword [esi + 0x12c], edi
mov dword [esi + 0x128], edx
mov edx, 0x5742a4c7
mov edi, 0x19e85e4a
mov dword [esi + 0x134], edi
mov dword [esi + 0x130], edx
mov edx, 0x25d0c90
mov edi, 0xe9ad7e3
mov dword [esi + 0x13c], edi
mov dword [esi + 0x138], edx
mov edx, 0xca3a4171
mov edi, 0x74acc154
mov dword [esi + 0x144], edi
mov dword [esi + 0x140], edx
mov edx, 0xb7a8a382
mov edi, 0x22d56bd5
mov dword [esi + 0x14c], edi
mov edi, 0x4afaedb6
mov dword [esi + 0x148], edx
mov edx, 0x6525cb9b
mov dword [esi + 0x154], edi
mov dword [esi + 0xcc], ecx
mov dword [esi + 0xc8], eax
mov dword [esi + 0x150], edx
mov dword [esi + 0x15c], ecx
mov dword [esi + 0x158], eax
lea eax, [esi + 0xf0]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x60]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x60], xmm0
movaps xmm0, xmmword [esi + 0x70]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x70], xmm0
movaps xmm0, xmmword [esi + 0x80]
xorps xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0x80], xmm0
movaps xmm0, xmmword [esi + 0x90]
xorps xmm0, xmmword [eax + 0x30]
movaps xmmword [esi + 0x90], xmm0
movaps xmm0, xmmword [esi + 0xa0]
xorps xmm0, xmmword [eax + 0x40]
movaps xmmword [esi + 0xa0], xmm0
movaps xmm0, xmmword [esi + 0xb0]
xorps xmm0, xmmword [eax + 0x50]
movaps xmmword [esi + 0xb0], xmm0
movaps xmm0, xmmword [esi + 0xc0]
xorps xmm0, xmmword [eax + 0x60]
movaps xmmword [esi + 0xc0], xmm0
xorps xmm0, xmm0
movaps xmmword [esi + 0x20], xmm0
mov dword [esi + 0x34], 0
mov dword [esi + 0x30], 0
lea ebx, [esi + 0x60]
push ebx
call fcn.10046e50
add esp, 4
cmp eax, 0x7fffffff
jae 0x10036e60
mov edi, eax
cmp eax, 7
ja 0x1003589c
mov dword [esi + 0x30], edi
mov dword [esi + 0x34], 7
lea eax, [edi + edi]
lea ecx, [esi + 0x20]
push eax
push ebx
push ecx
call fcn.1003be10
add esp, 0xc
lea eax, [esi + edi*2]
add eax, 0x20
jmp 0x10035afe
mov dword [esi + 0x1c], ebx
mov ecx, 0xf201f494
mov edx, 0x964b44fd
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0x4cdd31db
mov edx, 0x10c921cb
mov dword [esi + 0x2c], edx
mov dword [esi + 0x28], ecx
mov ecx, 0x99629ddf
mov edx, 0xf73907d2
mov dword [esi + 0x64], edx
mov edx, 0x10c921cb
mov dword [esi + 0x60], ecx
mov ecx, 0x4cdd59a8
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
lea ecx, [esi + 0x60]
xorps xmm0, xmm0
movlps qword [esi + 0xe4], xmm0
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
lea eax, [esi + 0xe4]
lea ecx, [esi + 0x20]
push eax
push ecx
call fcn.1001b830
add esp, 8
mov cl, 1
test al, al
mov edx, dword [esi + 0x1c]
je 0x100355e0
mov eax, dword [esi + 0xc]
mov dword [0x1006e0d8], eax
mov eax, dword [esi + 0x14]
mov dword [0x1006e0dc], eax
mov eax, dword [esi + 0x18]
movss xmm0, dword [eax + 0x100]
movss dword [esi + 0x108], xmm0
movss xmm0, dword [edx + 0x108]
movss dword [esi + 0x10c], xmm0
mov dword [esi + 0x110], 0x5bb1a2bc
xor ecx, ecx
mov dword [esi + 0x18], ecx
mov ecx, dword [esi + 0xc]
sub ecx, dword [0x1006e0e0]
mov edx, dword [esi + 0x14]
sbb edx, dword [0x1006e0e4]
xor eax, eax
mov edi, 0xea5f
cmp edi, ecx
mov edi, 0
sbb edi, edx
jl 0x1003564e
push 0xffffffffffffffff
push 0xfffffc18
push edx
push ecx
call fcn.10039040
add eax, 0x3c
adc edx, 0
lea edi, [esi + 0x60]
push edx
push eax
push str.Wait__d_seconds.__You_can_reduce_the_delay_by_writing_to_support_
push edi
call fcn.100056e0
add esp, 0x10
movaps xmm0, xmmword [0x1005b220]
movups xmmword [esi + 0x20], xmm0
lea eax, [esi + 0x20]
push edi
push eax
call fcn.1001b1c0
add esp, 8
mov eax, dword [esi + 0x18]
jmp 0x1003570a
mov ecx, 0xfc0ef88b
mov edx, 0x834b68a2
mov dword [esi + 0x24], edx
mov dword [esi + 0x20], ecx
mov ecx, 0x4cdd59a8
mov edx, 0x10c921cb
mov edi, 0x99629ddf
mov ebx, 0xf73907d2
mov dword [esi + 0x64], ebx
mov dword [esi + 0x60], edi
mov dword [esi + 0x2c], edx
mov dword [esi + 0x6c], edx
mov dword [esi + 0x28], ecx
mov dword [esi + 0x68], ecx
lea ecx, [esi + 0x60]
xorps xmm0, xmm0
movlps qword [esi + 0xe4], xmm0
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
lea eax, [esi + 0xe4]
lea ecx, [esi + 0x20]
push eax
push ecx
call fcn.1001b830
add esp, 8
test al, al
mov eax, dword [esi + 0x18]
je 0x1003570a
mov eax, dword [esi + 0xc]
mov dword [0x1006e0e0], eax
mov eax, dword [esi + 0x14]
mov dword [0x1006e0e4], eax
mov ecx, 0x1006bda0
call fcn.10009240
movss xmm0, dword [eax]
movss dword [esi + 0x108], xmm0
mov ecx, 0x1006bda0
call fcn.10009360
movss xmm0, dword [eax]
movss dword [esi + 0x10c], xmm0
mov ecx, 0x1006bda0
call fcn.100092d0
movss xmm0, dword [eax]
movss dword [esi + 0x110], xmm0
jmp 0x1003571b
test al, al
je 0x1003571b
mov edx, 0x80
mov eax, dword [esi + 0x48]
jmp 0x10035ab7
xorps xmm0, xmm0
movaps xmmword [esi + 0x60], xmm0
mov dword [esi + 0x70], 0
mov dword [esi + 0x74], 0xf
xor eax, eax
jmp 0x10035758
add ecx, ebx
push eax
lea eax, [esi + 0x20]
push eax
push ecx
call fcn.1003be10
add esp, 0xc
mov byte [ebx + edi], 0
mov eax, dword [esi + 0xc]
inc eax
lea ebx, [esi + 0x20]
cmp eax, dword [esi + 0x10]
jae 0x100357db
mov dword [esi + 0xc], eax
movzx eax, byte [esi + eax + 0xf0]
push eax
push str._02X
push ebx
call fcn.100056e0
add esp, 0xc
push ebx
call fcn.10046c60
add esp, 4
mov ecx, dword [esi + 0x70]
mov edx, dword [esi + 0x74]
mov edi, edx
sub edi, ecx
cmp edi, eax
jae 0x100357c0
mov dword [esi + 0x508], 2
sub esp, 0x10
movzx ecx, byte [esi + 0xe4]
mov byte [esp + 4], cl
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp], eax
lea ecx, [esi + 0x60]
call fcn.10037e00
jmp 0x10035754
mov edi, eax
add edi, ecx
mov dword [esi + 0x70], edi
lea ebx, [esi + 0x60]
cmp edx, 0x10
jb 0x10035740
mov ebx, dword [esi + 0x60]
jmp 0x10035740
mov eax, dword [esi + 0x70]
lea ecx, [eax - 1]
cmp dword [esi + 0x74], 0x10
lea ebx, [esi + 0x60]
mov edx, ebx
jb 0x100357ef
mov edx, dword [esi + 0x60]
mov edi, esp
mov dword [esi + 0x70], ecx
mov byte [edx + eax - 1], 0
push eax
sub esp, 0x18
mov eax, esp
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov ecx, dword [esi + 0x70]
cmp dword [esi + 0x74], 0x10
jb 0x1003581f
mov ebx, dword [esi + 0x60]
test ecx, ecx
js 0x10036e4c
cmp ecx, 0xf
mov dword [esi + 0xc], edi
ja 0x1003584e
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], 0xf
movups xmm0, xmmword [ebx]
movups xmmword [eax], xmm0
mov dword [esi + 0x508], 2
jmp 0x10035925
mov dword [esi + 0x14], ebx
mov dword [esi + 0x10], eax
mov dword [eax + 0x14], 0xf
mov dword [esi + 0x18], ecx
mov eax, ecx
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
mov dword [esi + 0x508], 2
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x100358f6
lea eax, [ecx + 0x24]
push eax
call fcn.10038f0a
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x10035902
mov dword [esi + 0x34], 7
mov eax, edi
or eax, 7
cmp eax, 0x7ffffffe
ja 0x10036e65
cmp eax, 0xb
mov ecx, 0xa
cmovae ecx, eax
lea eax, [ecx + ecx]
cmp ecx, 0x7ff
mov dword [esi + 0xc], ecx
jb 0x10035ad0
cmp ecx, 0x7fffffee
jae 0x10036e65
add eax, 0x25
push eax
call fcn.10038f0a
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x10035ade
lea eax, [ecx + 1]
push eax
call fcn.10038f0a
add esp, 4
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
mov dword [edx], eax
mov edi, dword [esi + 0x18]
mov dword [edx + 0x10], edi
mov ebx, dword [esi + 0x1c]
mov dword [edx + 0x14], ebx
inc edi
push edi
push ecx
push eax
call fcn.1003be10
mov eax, dword [esi + 0x10]
add esp, 0xc
mov dword [eax + 0x18], 0
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0xc]
mov eax, esp
push eax
sub esp, 0x18
mov edi, esp
xorps xmm0, xmm0
movups xmmword [edi], xmm0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov ecx, dword [esi + 0x70]
cmp dword [esi + 0x74], 0x10
jb 0x10035963
mov edx, dword [esi + 0x60]
jmp 0x10035966
lea edx, [esi + 0x60]
test ecx, ecx
js 0x10036e5b
mov dword [esi + 0xc], eax
cmp ecx, 0xf
ja 0x10035988
mov dword [edi + 0x10], ecx
mov dword [edi + 0x14], 0xf
movups xmm0, xmmword [edx]
movups xmmword [edi], xmm0
jmp 0x100359f8
mov dword [esi + 0x18], edx
mov dword [esi + 0x10], edi
mov dword [edi + 0x14], 0xf
mov dword [esi + 0x14], ecx
mov eax, ecx
or eax, 0xf
cmp eax, 0x17
mov ecx, 0x16
cmovae ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0x1c], ecx
jb 0x100359cc
lea eax, [ecx + 0x24]
push eax
call fcn.10038f0a
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x100359d8
lea eax, [ecx + 1]
push eax
call fcn.10038f0a
add esp, 4
mov edi, dword [esi + 0x10]
mov edx, dword [esi + 0x18]
mov dword [edi], eax
mov ecx, dword [esi + 0x14]
mov dword [edi + 0x10], ecx
mov ebx, dword [esi + 0x1c]
mov dword [edi + 0x14], ebx
inc ecx
push ecx
push edx
push eax
call fcn.1003be10
add esp, 0xc
mov dword [edi + 0x18], 0
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0xc]
movss xmm0, dword [esi + 0x108]
mov ecx, dword [esi + 0x40]
mov eax, dword [ecx + 0x6a8]
movss dword [eax + 0xa8], xmm0
movss xmm0, dword [esi + 0x110]
mov eax, dword [ecx + 0x6a8]
movss dword [eax + 0xac], xmm0
movss xmm0, dword [esi + 0x10c]
mov eax, dword [ecx + 0x6a8]
movss dword [eax + 0xb0], xmm0
mov eax, dword [esi + 0x74]
cmp eax, 0x10
jb 0x10035a89
mov ecx, dword [esi + 0x60]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x10035a7f
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov ecx, dword [esi + 0x5c]
cmp ecx, 0x10
jb 0x10035ac1
mov eax, dword [esi + 0x48]
lea edx, [ecx + 1]
cmp edx, 0x1000
jb 0x10035ab7
mov edi, dword [eax - 4]
add eax, 0xfffffffc
sub eax, edi
cmp eax, 0x20
jae 0x10036e47
add ecx, 0x24
mov edx, ecx
mov eax, edi
push edx
push eax
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x508], 0xffffffff
jmp 0x10035bd8
add eax, 2
push eax
call fcn.10038f0a
add esp, 4
mov ebx, eax
mov dword [esi + 0x20], ebx
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0xc]
mov dword [esi + 0x34], eax
lea eax, [edi + edi]
push eax
lea eax, [esi + 0x60]
push eax
push ebx
call fcn.1003be10
add esp, 0xc
lea eax, [ebx + edi*2]
mov word [eax], 0
mov dword [esi + 0x508], 3
lea eax, [esi + 0x20]
lea ecx, [esi + 0x48]
push eax
push ecx
call fcn.10038550
add esp, 8
cmp dword [esi + 0x5c], 0x10
lea eax, [esi + 0xf0]
lea ecx, [esi + 0x48]
jb 0x10035b2f
mov ecx, dword [esi + 0x48]
movaps xmm0, xmmword [0x1005b220]
movups xmmword [esi + 0xf0], xmm0
mov dword [esi + 0x508], 4
push ecx
push eax
call fcn.1001b1c0
add esp, 8
mov eax, dword [esi + 0x5c]
cmp eax, 0x10
jb 0x10035b89
mov ecx, dword [esi + 0x48]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x10035b7f
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x58], 0
mov dword [esi + 0x5c], 0xf
mov byte [esi + 0x48], 0
mov eax, dword [esi + 0x34]
cmp eax, 8
jb 0x10035bd8
mov ecx, dword [esi + 0x20]
lea edi, [eax + eax]
add edi, 2
cmp edi, 0x1000
jb 0x10035bce
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, eax
add eax, 0x25
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x508], 0xffffffff
push 0x1006bac8
push str.GM_
call fcn.100217a0
add esp, 8
push 0x1006ba77
push str.__
call fcn.100217a0
add esp, 8
push 0x1006ba78
push 0x10064c7c
call fcn.100217a0
add esp, 8
cmp byte [0x1006ba78], 0
je 0x10036648
cmp byte [0x1006bacf], 0
je 0x10035d1f
mov ecx, 0x1006bda0
call fcn.10008ff0
cmp dword [eax], 0
je 0x10036648
mov ecx, 0x1006bda0
call fcn.10009710
mov edi, eax
mov ecx, 0x51eb851f
imul ecx
mov eax, edx
shr eax, 0x1f
sar edx, 5
add edx, eax
imul eax, edx, 0x64
sub edi, eax
je 0x10035da3
cmp edi, 0x14
je 0x10035c7b
cmp edi, 0xa
jne 0x10035e25
mov dword [esi + 0x14], esp
sub esp, 0x4c
mov eax, esp
movaps xmm0, xmmword [0x1005b230]
movups xmmword [eax + 0x3c], xmm0
movaps xmm0, xmmword [0x1005b240]
movups xmmword [eax + 0x2c], xmm0
movaps xmm0, xmmword [0x1005b250]
movups xmmword [eax + 0x1c], xmm0
mov ebx, 0x1006bbe4
cmp dword [0x1006bbf8], 8
jb 0x10035cb8
mov ebx, dword [0x1006bbe4]
lea ecx, [eax + 0x34]
mov dword [esi + 0x40], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x1c], ecx
xorps xmm0, xmm0
movups xmmword [eax + 4], xmm0
mov dword [eax + 0x18], 0
mov dword [esi + 0xc], eax
mov dword [eax + 0x14], 0
push ebx
call fcn.10046e50
add esp, 4
cmp eax, 0x7fffffff
jae 0x10036e6a
mov edx, eax
cmp eax, 7
mov dword [esi + 0x18], edi
mov dword [esi + 0x10], eax
ja 0x10036140
mov edi, dword [esi + 0xc]
mov ecx, ebx
mov ebx, edi
add ebx, 4
mov dword [edi + 0x14], edx
mov dword [edi + 0x18], 7
lea eax, [edx + edx]
push eax
push ecx
jmp 0x100361dc
mov byte [0x1006ba78], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x10035d46
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x10035d74
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
jmp 0x10036648
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x10035d84
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
jmp 0x10036648
lea edi, [esi + 0xf0]
push 0x1006bc14
push edi
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
jb 0x10035dc6
mov edi, dword [esi + 0xf0]
movaps xmm0, xmmword [0x1005b220]
movups xmmword [esi + 0x60], xmm0
mov dword [esi + 0x508], 5
lea eax, [esi + 0x60]
push edi
push eax
call fcn.1001b1c0
add esp, 8
mov eax, dword [esi + 0x104]
cmp eax, 0x10
jb 0x10036648
mov ecx, dword [esi + 0xf0]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x1003663e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
jmp 0x1003663a
cmp dword [0x1006e0e8], 2
je 0x10035f3e
mov dword [esi + 0x10], esp
xorps xmm0, xmm0
movlps qword [esi + 0x48], xmm0
sub esp, 0x4c
mov edi, esp
lea ecx, [edi + 0x34]
mov dword [esi + 0x14], ecx
push 0x100666f8
call fcn.10037250
mov dword [esi + 0xc], edi
lea ecx, [edi + 0x1c]
mov dword [esi + 0x508], 0x10
mov dword [esi + 0x18], ecx
push 0x100666ca
call fcn.10037250
mov eax, dword [esi + 0xc]
lea ecx, [eax + 4]
mov eax, 0x1006bbcc
cmp dword [0x1006bbe0], 8
jb 0x10035e87
mov eax, dword [0x1006bbcc]
mov dword [esi + 0x508], 0x11
push eax
call fcn.10037250
lea edi, [esi + 0x60]
mov eax, dword [esi + 0xc]
mov dword [eax], edi
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x10]
mov dword [esi + 0x508], 0x12
lea eax, [esi + 0xf0]
push edi
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea ecx, [esi + 0xf0]
jb 0x10035ee3
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x508], 0x13
lea eax, [esi + 0x48]
push eax
push ecx
call fcn.1001b830
add esp, 8
mov ebx, eax
lea ecx, [esi + 0xf0]
call fcn.10008620
lea ecx, [esi + 0x60]
call fcn.10034e30
test bl, bl
je 0x10035f27
mov dword [esi + 0x508], 0xffffffff
push 2
call fcn.10034ca0
add esp, 4
cmp dword [0x1006e0e8], 3
mov dword [esi + 0x508], 0xffffffff
je 0x1003604a
mov dword [esi + 0x10], esp
xorps xmm0, xmm0
movlps qword [esi + 0x48], xmm0
sub esp, 0x4c
mov edi, esp
lea ecx, [edi + 0x34]
mov dword [esi + 0x14], ecx
push 0x100666f4
call fcn.10037250
mov dword [esi + 0xc], edi
lea ecx, [edi + 0x1c]
mov dword [esi + 0x508], 0x14
mov dword [esi + 0x18], ecx
push 0x100666ca
call fcn.10037250
mov eax, dword [esi + 0xc]
lea ecx, [eax + 4]
mov eax, 0x1006bbcc
cmp dword [0x1006bbe0], 8
jb 0x10035f93
mov eax, dword [0x1006bbcc]
mov dword [esi + 0x508], 0x15
push eax
call fcn.10037250
lea edi, [esi + 0x60]
mov eax, dword [esi + 0xc]
mov dword [eax], edi
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x10]
mov dword [esi + 0x508], 0x16
lea eax, [esi + 0xf0]
push edi
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea ecx, [esi + 0xf0]
jb 0x10035fef
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x508], 0x17
lea eax, [esi + 0x48]
push eax
push ecx
call fcn.1001b830
add esp, 8
mov ebx, eax
lea ecx, [esi + 0xf0]
call fcn.10008620
lea ecx, [esi + 0x60]
call fcn.10034e30
test bl, bl
je 0x10036033
mov dword [esi + 0x508], 0xffffffff
push 3
call fcn.10034ca0
add esp, 4
cmp dword [0x1006e0e8], 4
mov dword [esi + 0x508], 0xffffffff
je 0x10036648
mov dword [esi + 0x10], esp
xorps xmm0, xmm0
movlps qword [esi + 0x48], xmm0
sub esp, 0x4c
mov edi, esp
lea ecx, [edi + 0x34]
mov dword [esi + 0x14], ecx
push str.321
call fcn.10037250
mov dword [esi + 0xc], edi
lea ecx, [edi + 0x1c]
mov dword [esi + 0x508], 0x18
mov dword [esi + 0x18], ecx
push 0x100666ca
call fcn.10037250
mov eax, dword [esi + 0xc]
lea ecx, [eax + 4]
mov eax, 0x1006bbcc
cmp dword [0x1006bbe0], 8
jb 0x1003609f
mov eax, dword [0x1006bbcc]
mov dword [esi + 0x508], 0x19
push eax
call fcn.10037250
lea edi, [esi + 0x60]
mov eax, dword [esi + 0xc]
mov dword [eax], edi
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x10]
mov dword [esi + 0x508], 0x1a
lea eax, [esi + 0xf0]
push edi
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea ecx, [esi + 0xf0]
jb 0x100360fb
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x508], 0x1b
lea eax, [esi + 0x48]
push eax
push ecx
call fcn.1001b830
add esp, 8
mov ebx, eax
lea ecx, [esi + 0xf0]
call fcn.10008620
lea ecx, [esi + 0x60]
call fcn.10034e30
test bl, bl
je 0x10036648
mov dword [esi + 0x508], 0xffffffff
push 4
jmp 0x1003648f
mov eax, dword [esi + 0xc]
mov dword [eax + 0x18], 7
mov eax, edx
or eax, 7
cmp eax, 0x7ffffffe
ja 0x10036e79
cmp eax, 0xb
mov ecx, 0xa
cmovae ecx, eax
lea eax, [ecx + ecx]
cmp ecx, 0x7ff
mov dword [esi + 0x44], ebx
mov dword [esi + 0xec], ecx
jb 0x100361a8
cmp ecx, 0x7fffffee
jae 0x10036e79
add eax, 0x25
mov dword [esi + 0x508], 6
push eax
call fcn.10038f0a
add esp, 4
mov ebx, eax
add ebx, 0x23
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x100361c0
add eax, 2
mov dword [esi + 0x508], 6
push eax
call fcn.10038f0a
add esp, 4
mov ebx, eax
mov edi, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
mov dword [edi + 4], ebx
mov dword [edi + 0x14], ecx
mov eax, dword [esi + 0xec]
mov dword [edi + 0x18], eax
lea eax, [ecx + ecx]
push eax
push dword [esi + 0x44]
push ebx
call fcn.1003be10
add esp, 0xc
mov eax, dword [esi + 0x10]
lea eax, [ebx + eax*2]
mov word [eax], 0
lea ebx, [esi + 0x60]
mov dword [edi], ebx
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x14]
mov dword [esi + 0x508], 7
lea eax, [esi + 0xf0]
push ebx
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea eax, [esi + 0xf0]
jb 0x10036239
mov eax, dword [esi + 0xf0]
mov dword [esi + 0x508], 8
push eax
call fcn.1001af60
add esp, 4
mov eax, dword [esi + 0x104]
cmp eax, 0x10
jb 0x1003628a
mov ecx, dword [esi + 0xf0]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x10036280
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x100], 0
mov dword [esi + 0x104], 0xf
mov byte [esi + 0xf0], 0
mov eax, dword [esi + 0x74]
cmp eax, 8
jb 0x100362e2
mov ecx, dword [esi + 0x60]
lea edi, [eax + eax]
add edi, 2
cmp edi, 0x1000
jb 0x100362d8
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, eax
add eax, 0x25
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
cmp dword [esi + 0x18], 0xa
jne 0x10036386
mov dword [esi + 0x10], esp
push eax
sub esp, 0x48
mov edi, esp
movaps xmm0, xmmword [0x1005b230]
movups xmmword [edi + 0x3c], xmm0
movaps xmm0, xmmword [0x1005b240]
movups xmmword [edi + 0x2c], xmm0
movaps xmm0, xmmword [0x1005b250]
movups xmmword [edi + 0x1c], xmm0
mov ebx, 0x1006bbfc
cmp dword [0x1006bc10], 8
jb 0x1003632a
mov ebx, dword [0x1006bbfc]
lea eax, [edi + 0x34]
mov dword [esi + 0x14], eax
lea eax, [edi + 0x1c]
mov dword [esi + 0x18], eax
xorps xmm0, xmm0
movups xmmword [edi + 4], xmm0
mov dword [edi + 0x18], 0
mov dword [edi + 0x14], 0
push ebx
call fcn.10046e50
add esp, 4
cmp eax, 0x7fffffff
jae 0x10036e88
cmp eax, 7
mov dword [esi + 0xc], eax
ja 0x1003649c
mov ecx, ebx
mov ebx, edi
add ebx, 4
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], 7
lea edx, [eax + eax]
push edx
push ecx
jmp 0x10036533
cmp dword [0x1006e0e8], 1
je 0x10036648
mov dword [esi + 0x10], esp
xorps xmm0, xmm0
movlps qword [esi + 0x48], xmm0
push eax
sub esp, 0x48
mov edi, esp
lea ecx, [edi + 0x34]
mov dword [esi + 0x508], 0xffffffff
mov dword [esi + 0x14], ecx
push 0x100666f8
call fcn.10037250
mov dword [esi + 0xc], edi
lea ecx, [edi + 0x1c]
mov dword [esi + 0x508], 0xc
mov dword [esi + 0x18], ecx
push 0x100666ca
call fcn.10037250
mov eax, dword [esi + 0xc]
lea ecx, [eax + 4]
mov eax, 0x1006bbcc
cmp dword [0x1006bbe0], 8
jb 0x100363f3
mov eax, dword [0x1006bbcc]
mov dword [esi + 0x508], 0xd
push eax
call fcn.10037250
lea edi, [esi + 0x60]
mov eax, dword [esi + 0xc]
mov dword [eax], edi
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x10]
mov dword [esi + 0x508], 0xe
lea eax, [esi + 0xf0]
push edi
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea ecx, [esi + 0xf0]
jb 0x1003644f
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x508], 0xf
lea eax, [esi + 0x48]
push eax
push ecx
call fcn.1001b830
add esp, 8
mov ebx, eax
lea ecx, [esi + 0xf0]
call fcn.10008620
lea ecx, [esi + 0x60]
call fcn.10034e30
test bl, bl
je 0x10036648
mov dword [esi + 0x508], 0xffffffff
push 1
call fcn.10034ca0
add esp, 4
jmp 0x10036648
mov dword [edi + 0x18], 7
mov ecx, eax
or ecx, 7
cmp ecx, 0x7ffffffe
ja 0x10036e97
cmp ecx, 0xb
mov edx, 0xa
cmovae edx, ecx
lea ecx, [edx + edx]
cmp edx, 0x7ff
mov dword [esi + 0x40], edi
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x44], edx
jb 0x10036502
cmp edx, 0x7fffffee
jae 0x10036e97
add ecx, 0x25
mov dword [esi + 0x508], 9
push ecx
call fcn.10038f0a
add esp, 4
mov ebx, eax
add ebx, 0x23
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
jmp 0x1003651a
add ecx, 2
mov dword [esi + 0x508], 9
push ecx
call fcn.10038f0a
add esp, 4
mov ebx, eax
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x44]
mov edi, dword [esi + 0x40]
mov dword [edi + 4], ebx
mov dword [edi + 0x14], ecx
mov dword [edi + 0x18], eax
lea eax, [ecx + ecx]
push eax
push dword [esi + 0x1c]
push ebx
call fcn.1003be10
add esp, 0xc
mov eax, dword [esi + 0xc]
lea eax, [ebx + eax*2]
mov word [eax], 0
lea ebx, [esi + 0x60]
mov dword [edi], ebx
mov dword [esi + 0x508], 0xffffffff
call fcn.10038690
add esp, 0x4c
mov esp, dword [esi + 0x10]
mov dword [esi + 0x508], 0xa
lea eax, [esi + 0xf0]
push ebx
push eax
call fcn.10038550
add esp, 8
cmp dword [esi + 0x104], 0x10
lea ecx, [esi + 0xf0]
jb 0x10036590
mov ecx, dword [esi + 0xf0]
movaps xmm0, xmmword [0x1005b220]
movups xmmword [esi + 0x48], xmm0
mov dword [esi + 0x508], 0xb
lea eax, [esi + 0x48]
push ecx
push eax
call fcn.1001b1c0
add esp, 8
mov eax, dword [esi + 0x104]
cmp eax, 0x10
jb 0x100365f0
mov ecx, dword [esi + 0xf0]
lea edi, [eax + 1]
cmp edi, 0x1000
jb 0x100365e6
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, 0x24
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x100], 0
mov dword [esi + 0x104], 0xf
mov byte [esi + 0xf0], 0
mov eax, dword [esi + 0x74]
cmp eax, 8
jb 0x10036648
mov ecx, dword [esi + 0x60]
lea edi, [eax + eax]
add edi, 2
cmp edi, 0x1000
jb 0x1003663e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10036e47
add eax, eax
add eax, 0x25
mov edi, eax
mov ecx, edx
push edi
push ecx
call fcn.10038f3f
add esp, 8
mov dword [esi + 0x508], 0xffffffff
push 0x1006ba79
push str.___
call fcn.100217a0
add esp, 8
push 0x1006baca
push str.___1___2_.___
call fcn.100217a0
add esp, 8
push 0x1006bacc
push str.___3_
call fcn.100217a0
add esp, 8
cmp byte [0x1006bb14], 0
je 0x100366b3
mov byte [0x1006ba18], 1
mov byte [0x1006bb04], 1
mov dword [0x1006ba1c], 0x3e8
mov dword [0x1006bb00], 0x64
cmp byte [0x1006ba30], 0
je 0x1003673a
push 0xff0000ff
push 0
call fcn.1001a5f0
add esp, 8
push str.__1.9____
call fcn.1001af60
add esp, 4
push 1
call fcn.10018470
add esp, 4
movss xmm0, dword [0x1006b008]
cvtss2sd xmm0, xmm0
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
lea edi, [esi + 0xf0]
mov dword [esp], edi
mov dword [esp + 8], str.____
mov dword [esp + 4], str._s:__.2f
call fcn.100056e0
add esp, 0x14
push 0x3f800000
push edi
push 0x40400000
push 0x3f800000
push 0x1006b008
push 0x100664b3
call fcn.10020aa0
add esp, 0x18
cmp byte [0x1006ba77], 0
je 0x100367a0
cmp byte [0x1006ba76], 0
jne 0x100367a0
mov byte [0x1006ba77], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x10036773
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x1003682b
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
cmp byte [0x1006ba79], 0
je 0x10036862
mov byte [0x1006ba79], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x100367d4
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x100367ff
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
jmp 0x10036862
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x1003680f
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
jmp 0x10036862
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x1003683b
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
cmp byte [0x1006ba79], 0
jne 0x100367ad
cmp byte [0x1006bac8], 0
je 0x100368c8
cmp byte [0x1006bac9], 0
jne 0x100368c8
mov byte [0x1006bac8], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x1003689b
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x10036a45
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
cmp byte [0x1006baca], 0
je 0x10036ad2
cmp byte [0x1006bacb], 0
je 0x10036a7e
mov ecx, 0x1006bda0
call fcn.10008ff0
mov eax, dword [eax]
mov edi, dword [eax + 8]
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
lea ebx, [esi + 0xf0]
push ebx
push 0x10064d4b
call fcn.1001b830
add esp, 8
test al, al
je 0x1003698e
mov dword [esi + 0x10], esp
push eax
sub esp, 0x18
mov ebx, esp
mov eax, dword [edi]
mov dword [esi + 0x14], eax
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
push 0x210
call fcn.10038f0a
add esp, 4
mov dword [esi + 0xc], edi
mov edi, eax
mov dword [ebx], eax
mov dword [ebx + 0x10], 0x20c
mov dword [ebx + 0x14], 0x20f
push 0x20c
push str.06_0A_00_00_00_00_00_00_00_00_01_00_83_0F_01_00_00_00_EB_03_02_00_C3_75_F7_5F_E7_03_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_03_E6_00_5F_00_00_00_00_00_00_00_08
push eax
call fcn.1003be10
add esp, 0xc
mov byte [edi + 0x20c], 0
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x18], eax
lea ebx, [esi + 0xf0]
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0x10]
push 0xbf800000
push 0
call fcn.1000ba80
add esp, 8
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
push ebx
push 0x10064d5f
call fcn.1001b830
add esp, 8
test al, al
je 0x10036ad2
mov dword [esi + 0xc], esp
push eax
sub esp, 0x18
mov eax, edi
mov edi, esp
mov ebx, dword [eax]
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov dword [edi + 0xc], 0
push 0x40
call fcn.10038f0a
add esp, 4
mov dword [edi], eax
mov dword [edi + 0x10], 0x32
mov dword [edi + 0x14], 0x3f
movups xmm0, xmmword [str.06_01_00_00_00_17_00_04_66_6F_00_08_08_00_00_71_49]
movups xmmword [eax], xmm0
movups xmm0, xmmword [0x100652f2]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x10065302]
movups xmmword [eax + 0x20], xmm0
mov word [eax + 0x30], 0x3934
mov byte [eax + 0x32], 0
mov dword [edi + 0x18], ebx
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0xc]
cmp byte [0x1006bacc], 0
jne 0x10036adf
jmp 0x10036dfa
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x10036a55
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
cmp byte [0x1006baca], 0
jne 0x100368d5
jmp 0x10036ad2
mov byte [0x1006bacc], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x10036aa5
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x10036e0e
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
cmp byte [0x1006bacc], 0
je 0x10036dfa
cmp byte [0x1006bacd], 0
je 0x10036d7e
mov ecx, 0x1006bda0
call fcn.10008ff0
mov eax, dword [eax]
mov edi, dword [eax + 8]
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
lea ebx, [esi + 0xf0]
push ebx
push str._
call fcn.1001b830
add esp, 8
test al, al
mov dword [esi + 0xc], edi
je 0x10036b98
mov dword [esi + 0x10], esp
push eax
sub esp, 0x18
mov ebx, esp
mov eax, dword [edi]
mov dword [esi + 0x14], eax
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
push 0x210
call fcn.10038f0a
add esp, 4
mov edi, eax
mov dword [ebx], eax
mov dword [ebx + 0x10], 0x20c
mov dword [ebx + 0x14], 0x20f
push 0x20c
push str.06_0A_00_00_00_00_00_00_00_00_01_00_83_0F_01_00_00_00_EB_03_02_00_C3_75_F7_5F_E7_03_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_03_E6_00_5F_00_00_00_00_00_00_00_01
push eax
call fcn.1003be10
add esp, 0xc
mov byte [edi + 0x20c], 0
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x18], eax
lea ebx, [esi + 0xf0]
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0x10]
push 0xbf800000
push 0
call fcn.1000ba80
add esp, 8
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
push ebx
push 0x10064aa8
call fcn.1001b830
add esp, 8
test al, al
je 0x10036c3b
mov dword [esi + 0x10], esp
push eax
sub esp, 0x18
mov ebx, esp
mov eax, dword [edi]
mov dword [esi + 0x14], eax
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
push 0x210
call fcn.10038f0a
add esp, 4
mov edi, eax
mov dword [ebx], eax
mov dword [ebx + 0x10], 0x20c
mov dword [ebx + 0x14], 0x20f
push 0x20c
push str.06_0A_00_00_00_00_00_00_00_00_01_00_83_0F_01_00_00_00_EB_03_02_00_C3_75_F7_5F_E7_03_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_03_E6_00_5F_00_00_00_00_00_00_00_02
push eax
call fcn.1003be10
add esp, 0xc
mov byte [edi + 0x20c], 0
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x18], eax
lea ebx, [esi + 0xf0]
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0x10]
push 0xbf800000
push 0
call fcn.1000ba80
add esp, 8
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
push ebx
push 0x10064a8a
call fcn.1001b830
add esp, 8
test al, al
je 0x10036cde
mov dword [esi + 0x10], esp
push eax
sub esp, 0x18
mov ebx, esp
mov eax, dword [edi]
mov dword [esi + 0x14], eax
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
push 0x210
call fcn.10038f0a
add esp, 4
mov edi, eax
mov dword [ebx], eax
mov dword [ebx + 0x10], 0x20c
mov dword [ebx + 0x14], 0x20f
push 0x20c
push str.06_0A_00_00_00_00_00_00_00_00_01_00_83_0F_01_00_00_00_EB_03_02_00_C3_75_F7_5F_E7_03_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_03_E6_00_5F_00_00_00_00_00_00_00_03
push eax
call fcn.1003be10
add esp, 0xc
mov byte [edi + 0x20c], 0
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x18], eax
lea ebx, [esi + 0xf0]
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0x10]
push 0xbf800000
push 0
call fcn.1000ba80
add esp, 8
xorps xmm0, xmm0
movlps qword [esi + 0xf0], xmm0
push ebx
push 0x10064a23
call fcn.1001b830
add esp, 8
test al, al
je 0x10036dfa
mov dword [esi + 0x10], esp
push eax
sub esp, 0x18
mov ebx, esp
mov eax, dword [edi]
mov dword [esi + 0xc], eax
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
push 0x210
call fcn.10038f0a
add esp, 4
mov edi, eax
mov dword [ebx], eax
mov dword [ebx + 0x10], 0x20c
mov dword [ebx + 0x14], 0x20f
push 0x20c
push str.06_0A_00_00_00_00_00_00_00_00_01_00_83_0F_01_00_00_00_EB_03_02_00_C3_75_F7_5F_E7_03_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_00_03_E6_00_5F_00_00_00_00_00_00_00_04
push eax
call fcn.1003be10
add esp, 0xc
mov byte [edi + 0x20c], 0
mov eax, dword [esi + 0xc]
mov dword [ebx + 0x18], eax
mov ecx, 0x1006bda0
call fcn.10009480
mov esp, dword [esi + 0x10]
jmp 0x10036dfa
mov byte [0x1006bacc], 0
mov byte [0x1006e0b0], 1
mov edi, dword [0x1006bbac]
mov eax, 0x1006bb9c
cmp dword [0x1006bbb0], 8
jb 0x10036da5
mov eax, dword [0x1006bb9c]
mov ecx, dword [0x1006e0c8]
cmp ecx, edi
jae 0x10036dd0
sub esp, 0xc
movzx ecx, byte [esi + 0xf0]
mov byte [esp + 4], cl
mov dword [esp + 8], eax
mov dword [esp], edi
mov ecx, 0x1006e0b4
call fcn.10037cf0
jmp 0x10036dfa
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x10036de0
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
mov eax, dword [esi + 0x500]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, 0x1006e0b4
cmp ecx, 8
jb 0x10036e1e
mov ebx, dword [0x1006e0b4]
mov dword [0x1006e0c4], edi
lea ecx, [edi + edi]
push ecx
push eax
push ebx
call fcn.1003be10
add esp, 0xc
mov word [ebx + edi*2], 0
cmp byte [0x1006bacc], 0
jne 0x10036adf
jmp 0x10036dfa
call fcn.10044ac7
mov dword [esi + 0x508], 2
call fcn.10002110
call fcn.10002110
call fcn.10002110
call fcn.10002120
mov dword [esi + 0x508], 6
call fcn.10002110
mov dword [esi + 0x508], 6
call fcn.10002120
mov dword [esi + 0x508], 9
call fcn.10002110
mov dword [esi + 0x508], 9
call fcn.10002120
nop word cs:[eax + eax]
push ebp
sub esp, 0x4c
lea esi, [ebp - 0x50c]
mov ebp, dword [esi + 0x4f8]
lea ecx, [esi + 0xf0]
call fcn.10008620
add esp, 0x4c
pop ebp
ret