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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x548
push esi
mov esi, ecx
lea eax, [ebp + 8]
push edi
push eax
mov dword [esp + 0x1c], esi
lea ecx, [esi + 0x268]
call fcn.03629b30
lea ecx, [ebp + 8]
push ecx
lea ecx, [esi + 0x1b8]
call fcn.03629b30
lea eax, [esi + 0xac]
xor ecx, ecx
mov dword [esp + 0x30], eax
lea eax, [esi + 0xd4]
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], ecx
lea esp, [esp]
mov esi, dword [esp + ecx*4 + 0x30]
add esi, 0xc
mov dword [esp + 0x3c], esi
call dword [0x100f5284]
mov edi, eax
lea eax, [esi + 8]
mov dword [esp + 0x24], eax
cmp edi, dword [eax]
je 0x368f186
cmp dword [eax], 0
jne 0x368f173
push 0
push edi
push eax
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x368f173
mov edi, dword [esp + 0x3c]
mov dword [edi + 0x10], 0
jmp 0x368f18a
push ecx
push edi
mov edi, dword [esp + 0x44]
mov ecx, edi
call fcn.03621400
test al, al
jne 0x368f18a
jmp 0x368f18f
mov edi, dword [esp + 0x3c]
inc dword [edi + 0x10]
mov al, 1
mov byte [esp + 0x13], al
mov byte [esp + 0x40], al
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + eax*4 + 0x34]
call fcn.0366a950
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x28]
mov eax, dword [esp + ecx*4 + 0x30]
cmp esi, dword [eax + 4]
jne 0x368f1dc
xor ecx, ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x44], ecx
test esi, esi
je 0x368f1d6
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x28], 0
mov esi, dword [esp + 0x20]
jmp 0x368f218
mov ecx, esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x44], ecx
test esi, esi
je 0x368f40c
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x28], 0
test esi, esi
je 0x368f40c
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x44], 0
test esi, esi
je 0x368f40c
mov dword [esp + 0xc0], 0
jmp 0x368f230
mov edi, dword [esi + 0xc]
mov dword [esp + 0x58], esi
mov dword [esp + 0x1c], edi
test edi, edi
je 0x368f245
mov eax, dword [edi]
push edi
call dword [eax + 8]
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x38]
push esi
push eax
mov ecx, dword [esp + ecx*4 + 0x38]
call fcn.0362be10
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x38]
mov eax, dword [esp + ecx*4 + 0x30]
cmp esi, dword [eax + 4]
jne 0x368f297
xor edi, edi
mov dword [esp + 0x50], edi
test esi, esi
je 0x368f283
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x38], edi
mov ecx, dword [esp + 0x20]
push ecx
mov eax, dword [ecx]
call dword [eax + 0xc]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x1c]
jmp 0x368f2d3
mov dword [esp + 0x50], esi
test esi, esi
je 0x368f2b3
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x38], 0
mov ecx, dword [esp + 0x20]
push ecx
mov eax, dword [ecx]
call dword [eax + 0xc]
mov dword [esp + 0x20], esi
test esi, esi
je 0x368f2d3
mov eax, dword [esi]
push esi
call dword [eax + 0xc]
mov dword [esp + 0x50], 0
call dword [0x100f5284]
lea ecx, [edi + 0x10]
mov dword [esp + 0x1c], eax
cmp eax, dword [ecx]
je 0x368f30b
cmp dword [ecx], 0
jne 0x368f4c2
push 0
push eax
push ecx
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x368f4be
mov dword [edi + 0x18], 0
inc dword [edi + 0x18]
mov al, 1
mov ecx, dword [edi + 0x20]
mov dword [esp + 0x1c], ecx
test al, al
je 0x368f351
dec dword [edi + 0x18]
jne 0x368f351
push 0
lea eax, [edi + 0x10]
mov dword [edi + 0x18], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0x14], 0
lea eax, [edi + 0x14]
jle 0x368f351
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x1c]
push 0
push 1
push eax
call dword [0x100f5288]
mov eax, dword [esp + 0x1c]
cmp eax, dword [ebp + 8]
je 0x368f3e5
call dword [0x100f5284]
lea ecx, [edi + 0x10]
mov dword [esp + 0x1c], eax
cmp eax, dword [ecx]
je 0x368f396
cmp dword [ecx], 0
jne 0x368f4dd
push 0
push eax
push ecx
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x368f4d9
mov dword [edi + 0x18], 0
inc dword [edi + 0x18]
mov al, 1
mov ecx, dword [edi + 0x24]
mov dword [esp + 0x1c], ecx
test al, al
je 0x368f3dc
dec dword [edi + 0x18]
jne 0x368f3dc
push 0
lea eax, [edi + 0x10]
mov dword [edi + 0x18], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0x14], 0
lea eax, [edi + 0x14]
jle 0x368f3dc
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x1c]
push 0
push 1
push eax
call dword [0x100f5288]
mov eax, dword [esp + 0x1c]
cmp eax, dword [ebp + 8]
jne 0x368f3f6
mov ecx, dword [esp + 0x14]
push dword [esp + 0x58]
mov ecx, dword [esp + ecx*4 + 0x34]
call fcn.0362b060
mov eax, dword [edi]
push edi
call dword [eax + 0xc]
mov esi, dword [esp + 0x20]
test esi, esi
jne 0x368f230
mov edi, dword [esp + 0x3c]
cmp byte [esp + 0x13], 0
je 0x368f44c
dec dword [edi + 0x10]
jne 0x368f44c
push 0
push dword [esp + 0x28]
mov dword [edi + 0x10], 0
call dword [0x100f528c]
add edi, 0xc
cmp dword [edi], 0
jle 0x368f44c
push edi
call dword [0x100f5290]
mov eax, dword [esp + 0x3c]
push 0
push 1
mov eax, dword [eax + 0x14]
push eax
call dword [0x100f5288]
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 2
jb 0x368f130
mov edi, dword [esp + 0x18]
lea eax, [ebp + 8]
push eax
lea eax, [esp + 0x50]
push eax
lea ecx, [edi + 0x230]
call fcn.036309b0
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x368f4fa
mov edx, dword [eax]
mov esi, dword [eax + 0xc]
push eax
call dword [edx + 0xc]
lea eax, [ebp + 8]
mov dword [esp + 0x4c], 0
push eax
lea ecx, [edi + 0x230]
call fcn.0362fdf0
mov ecx, dword [0x1011f340]
push esi
test ecx, ecx
je 0x368f4f4
mov eax, dword [ecx + 0x72c]
add ecx, 0x72c
mov eax, dword [eax + 0x24]
call eax
call eax
jmp 0x368f4fa
mov eax, dword [esp + 0x1c]
push ecx
push eax
lea ecx, [edi + 8]
call fcn.03621400
test al, al
jne 0x368f30b
jmp 0x368f310
mov eax, dword [esp + 0x1c]
push ecx
push eax
lea ecx, [edi + 8]
call fcn.03621400
test al, al
jne 0x368f396
jmp 0x368f39b
call dword [0x100f5250]
mov edi, dword [ebp + 8]
lea eax, [esp + 0x54]
mov ecx, dword [esp + 0x18]
push eax
lea eax, [esp + 0x60]
push eax
push edi
call fcn.0368f980
cmp dword [esp + 0x5c], 0
jne 0x368f55a
mov esi, dword [esp + 0x54]
test esi, esi
je 0x368f537
call dword [0x100f5138]
test eax, eax
je 0x368f544
push 0
push 0
push 0
push esi
call dword [0x100f513c]
mov dword [esp + 0x14], 1
jmp 0x368f8cb
mov eax, dword [ebp + 0xc]
mov dword [eax], 0
mov eax, dword [ebp + 0x10]
mov dword [eax], esi
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x60]
push eax
mov dword [esp + 0x64], edi
lea ecx, [ecx + 0x168]
call fcn.03629b30
mov esi, eax
mov dword [esp + 0x14], esi
test esi, esi
je 0x368f5b7
cmp edi, 0xffffffff
je 0x368f5af
cmp edi, 0xfffffff5
jae 0x368f5af
mov eax, 0x6000000
cmp eax, edi
sbb eax, eax
neg eax
je 0x368f5af
mov ecx, dword [0x1011f340]
lea eax, [edi - 0x6000000]
add ecx, 0x72c
push eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
call eax
test esi, esi
jne 0x368f8cb
mov eax, dword [esp + 0x18]
lea edx, [esp + 0xc4]
push edx
push 0x38
lea edx, [esp + 0xe8]
mov ecx, dword [eax + 0x128]
push edx
push 0
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
test eax, eax
jne 0x368f5ef
cmp dword [esp + 0xe8], 1
jne 0x368f8cb
xor eax, eax
mov dword [esp + 0x11c], 0
mov dword [esp + 0x118], eax
mov dword [esp + 0x320], eax
mov dword [esp + 0x324], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
lea eax, [esp + 0x118]
push eax
lea eax, [esp + 0xa4]
mov dword [esp + 0xa4], 0x18
push eax
mov eax, dword [esp + 0x20]
mov ecx, eax
mov dword [esp + 0xac], edi
mov dword [esp + 0xb4], 0x40
push dword [eax + 0x138]
call fcn.03698900
test eax, eax
je 0x368f6a8
mov eax, dword [esp + 0x340]
cmp eax, dword [esp + 0x334]
jl 0x368f6a8
mov esi, dword [esp + 0x328]
mov esi, dword [esi + 8]
test esi, esi
je 0x368f68c
mov eax, dword [esi]
push esi
call dword [eax + 4]
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x58]
call eax
test eax, eax
je 0x368f6a2
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax + 0x5c]
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov eax, dword [esp + 0x18]
push 8
mov esi, dword [eax + 0x128]
lea eax, [esp + 0xbc]
push eax
call dword [0x1011f44c]
mov eax, dword [esi]
lea ecx, [esp + 0xc8]
push 5
push 0x18
push ecx
mov eax, dword [eax + 0x98]
lea ecx, [esp + 0xc4]
push ecx
push edi
mov ecx, esi
call eax
test eax, eax
jne 0x368f797
cmp byte [esp + 0xdc], 1
jne 0x368f797
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x348]
mov dword [esp + 0x34c], eax
mov dword [esp + 0x348], eax
push ecx
mov eax, dword [esi]
mov ecx, esi
push edi
mov eax, dword [eax + 0x14]
call eax
test eax, eax
jne 0x368f780
lea eax, [ebp + 8]
push eax
lea eax, [esp + 0x4c]
push eax
lea ecx, [esi + 0xfc]
call fcn.0362a7c0
xor ecx, ecx
cmp dword [eax], ecx
mov eax, dword [esp + 0x48]
setne cl
mov dword [esp + 0x24], ecx
test eax, eax
je 0x368f75a
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x48], 0
test ecx, ecx
je 0x368f780
mov eax, dword [esp + 0x348]
mov ecx, esi
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x34c]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x68]
push eax
call fcn.0369d700
mov ecx, dword [esp + 0x34c]
lea eax, [esp + 0x350]
cmp eax, ecx
je 0x368f797
call fcn.03707920
mov esi, dword [esp + 0x320]
test esi, esi
je 0x368f89e
mov dword [esp + 0x70], 0x1011f690
mov dword [esp + 0x78], 0x1011f68c
mov ecx, dword [esi + 8]
mov edi, dword [esi + 4]
test ecx, ecx
je 0x368f7cd
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [esi + 8], 0
lea eax, [esp + 0x80]
mov dword [esp + 0x74], 0
mov dword [esp + 0x98], eax
lea eax, [esp + 0x2f]
push ecx
mov dword [esp + 0x80], 0
lea ecx, [esp + 0x84]
movdqa xmm0, xmmword [esp + 0x74]
mov dword [esp + 0x84], 0
push eax
mov dword [esp + 0x8c], 0xffffffff
movdqu xmmword [esp + 0x90], xmm0
call fcn.037039a0
test al, al
je 0x368f834
mov eax, dword [esp + 0x90]
inc dword [eax]
mov al, 1
push esi
push 1
push dword [0x1011f2ec]
mov byte [esp + 0xa8], al
call dword [0x100f5100]
cmp byte [esp + 0x9c], 0
je 0x368f894
mov esi, dword [esp + 0x98]
mov eax, dword [esi + 0x10]
dec dword [eax]
jne 0x368f894
mov eax, dword [esi + 0x10]
push 0
mov dword [eax], 0
push dword [esi + 8]
call dword [0x100f528c]
cmp dword [esi + 0xc], 0
lea eax, [esi + 0xc]
jle 0x368f894
push eax
call dword [0x100f5290]
mov eax, dword [esi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
mov esi, edi
test edi, edi
jne 0x368f7b6
mov ecx, dword [esp + 0x11c]
lea eax, [esp + 0x120]
mov dword [esp + 0x324], 0
mov dword [esp + 0x320], 0
cmp eax, ecx
je 0x368f8cb
call fcn.03707920
mov eax, dword [esp + 0x18]
lea ecx, [ebp + 8]
push ecx
lea ecx, [esp + 0x68]
push ecx
lea ecx, [eax + 0x208]
call fcn.0362ae90
mov edi, dword [esp + 0x64]
test edi, edi
je 0x368f90b
mov esi, dword [edi + 0xc]
test esi, esi
je 0x368f8f8
mov eax, dword [esi]
push esi
call dword [eax + 4]
mov eax, dword [edi]
push edi
call dword [eax + 0xc]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov edi, dword [esp + 0x18]
lea eax, [ebp + 8]
push eax
lea ecx, [edi + 0x208]
call fcn.03629b30
lea eax, [ebp + 8]
push eax
lea ecx, [edi + 0x1b8]
call fcn.03629b30
lea eax, [ebp + 8]
push eax
lea ecx, [edi + 0x1e0]
call fcn.03629820
lea eax, [ebp + 8]
push eax
lea ecx, [edi + 0xfc]
call fcn.03629820
cmp dword [esp + 0x14], 0
mov eax, dword [ebp + 0xc]
je 0x368f96c
mov dword [eax], 0
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc
pop edi
mov dword [eax], 1
pop esi
mov esp, ebp
pop ebp
ret 0xc