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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x4b8
mov eax, dword [0x1011f340]
push esi
mov esi, ecx
mov dword [esp + 0x1c], eax
mov ecx, dword [0x1011f360]
push edi
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fe45c
push 0x101073e0
push ecx
push esi
push ecx
push 0x10113c98
push 0x1010dfe8
push 2
lea ecx, [esp + 0x178]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x15c]
call fcn.0363bfe0
cmp dword [ebp + 0x2c], 0
je 0x36fec75
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fe4a5
push 0x10113cf8
push 0x1010dfe8
push 4
lea ecx, [esp + 0x114]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x108]
call fcn.0363bfe0
lea ecx, [esp + 0x44]
call fcn.0370ced0
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
mov edi, dword [esp + 0x44]
test eax, eax
je 0x36fe527
push 0x10108b9c
sub esp, 0xc
mov ecx, esp
push edi
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.0362a210
push ecx
push 0x10113d50
push 0x1010dfe8
push 2
lea ecx, [esp + 0x170]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
mov ecx, eax
call fcn.0363c0c0
lea ecx, [esp + 0x150]
call fcn.0363bfe0
push 0
push 0
push 3
push 0
push 1
push 0x80000000
push esi
call dword [0x100f5238]
mov esi, eax
mov dword [esp + 0x24], esi
cmp esi, 0xffffffff
jne 0x36fe5fa
call dword [0x100f526c]
mov ecx, dword [0x1011f360]
mov dword [esp + 0x18], eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xf8]
call edx
test eax, eax
je 0x36fec48
push 0x10112f18
sub esp, 0xc
mov ecx, esp
push edi
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.0362a210
push ecx
push 0x10113da0
push 0x1010dfe8
push 0
lea ecx, [esp + 0x164]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
mov ecx, eax
call fcn.0363c0c0
push dword [esp + 0x18]
mov edi, eax
lea eax, [esp + 0x2c4]
push 0x100f9404
push eax
call dword [0x100f5304]
add esp, 0xc
lea eax, [esp + 0x2c0]
mov ecx, edi
push eax
call fcn.0363c0c0
lea ecx, [esp + 0x144]
jmp 0x36fec3f
push 0
lea eax, [esp + 0x24]
push eax
push 0x40
lea eax, [esp + 0x184]
push eax
push esi
call dword [0x100f5124]
test eax, eax
je 0x36feb96
cmp dword [esp + 0x20], 0x40
jne 0x36feb96
push 0
push 0
push dword [esp + 0x1bc]
push esi
call dword [0x100f50b4]
cmp dword [esp + 0x1b4], eax
je 0x36fe6ce
call dword [0x100f526c]
mov ecx, dword [0x1011f360]
mov dword [esp + 0x18], eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xf8]
call edx
test eax, eax
je 0x36fec48
push dword [esp + 0x18]
lea eax, [esp + 0x48]
push ecx
push 0x10112f18
sub esp, 0x10
mov ecx, esp
push eax
call fcn.03629340
push ecx
push 0x10113e30
push 0x1010dfe8
push 0
lea ecx, [esp + 0xe0]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
add esp, 4
mov ecx, eax
call fcn.0363c0c0
add esp, 4
mov ecx, eax
call fcn.0363c1b0
lea ecx, [esp + 0xb4]
call fcn.0363bfe0
jmp 0x36fec48
push 0
lea eax, [esp + 0x24]
push eax
push 0x108
lea eax, [esp + 0x1c4]
push eax
push esi
call dword [0x100f5124]
test eax, eax
jne 0x36fe77b
call dword [0x100f526c]
mov ecx, dword [0x1011f360]
mov dword [esp + 0x18], eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xf8]
call edx
test eax, eax
je 0x36fec48
push dword [esp + 0x18]
lea eax, [esp + 0x48]
push ecx
push 0x10112f18
sub esp, 0x10
mov ecx, esp
push eax
call fcn.03629340
push ecx
push 0x10113e78
push 0x1010dfe8
push 0
lea ecx, [esp + 0xbc]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
add esp, 4
mov ecx, eax
call fcn.0363c0c0
add esp, 4
mov ecx, eax
call fcn.0363c1b0
lea ecx, [esp + 0x90]
call fcn.0363bfe0
jmp 0x36fec48
movzx eax, word [esp + 0x1d0]
mov ecx, dword [0x1011f360]
mov dword [esp + 0x18], eax
cmp eax, 0x10b
jne 0x36fea16
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fe7d1
push 0x10113ec8
push 0x1010dfe8
push 4
lea ecx, [esp + 0xd8]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0xcc]
call fcn.0363bfe0
mov ecx, dword [esp + 0x30]
call fcn.0370d090
mov ecx, dword [0x1011f360]
test eax, eax
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
je 0x36fe9d2
call eax
test eax, eax
je 0x36fe821
push 0x10113ef8
push 0x1010dfe8
push 4
lea ecx, [esp + 0x144]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x138]
call fcn.0363bfe0
cmp dword [0x1011f61c], 0
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
je 0x36fe992
mov eax, dword [eax + 0x4c]
call eax
push eax
lea ecx, [esp + 0x78]
call fcn.03629310
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fe884
push 0x10113f38
push 0x1010dfe8
push 4
lea ecx, [esp + 0xf0]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0xe4]
call fcn.0363bfe0
mov ecx, dword [esp + 0x74]
call fcn.036c6240
mov ecx, dword [0x1011f360]
test eax, eax
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
je 0x36fe906
call eax
test eax, eax
je 0x36fe8fc
push 0x10113fb0
sub esp, 0x10
lea eax, [esp + 0x88]
mov ecx, esp
push eax
call fcn.03629340
push ecx
push 0x10113f7c
push 0x1010dfe8
push 4
lea ecx, [esp + 0x144]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
add esp, 4
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x120]
call fcn.0363bfe0
mov dword [esp + 0x1c], 0
jmp 0x36fe96b
call eax
test eax, eax
je 0x36fe963
push 0x10114048
sub esp, 0x10
lea eax, [esp + 0x88]
mov ecx, esp
push eax
call fcn.03629340
push ecx
push 0x10114000
push 0x1010dfe8
push 1
lea ecx, [esp + 0x120]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
add esp, 4
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0xfc]
call fcn.0363bfe0
mov dword [esp + 0x1c], 1
lea ecx, [esp + 0x74]
call fcn.036231a0
cmp dword [esp + 0x1c], 0
je 0x36feac5
mov edx, edi
lea ecx, [esp + 0x1b8]
call fcn.0370e3a0
jmp 0x36fead3
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36feac5
push 0x10114128
push 0x1010dfe8
push 4
lea ecx, [esp + 0x138]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x12c]
call fcn.0363bfe0
jmp 0x36feac5
call eax
test eax, eax
je 0x36fea03
push 0x101141a8
push 0x1010dfe8
push 4
lea ecx, [esp + 0x120]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x114]
call fcn.0363bfe0
mov edx, edi
lea ecx, [esp + 0x1b8]
call fcn.0370e3a0
jmp 0x36fead3
cmp eax, 0x20b
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
jne 0x36fea5c
call eax
test eax, eax
je 0x36feac5
push 0x10114228
push 0x1010dfe8
push 4
lea ecx, [esp + 0xa8]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0x9c]
call fcn.0363bfe0
jmp 0x36feac5
call eax
test eax, eax
je 0x36feac5
push 0x1011432c
push ecx
push dword [esp + 0x20]
lea ecx, [esp + 0x174]
call fcn.036231d0
push eax
push ecx
push 0x10114298
push 0x1010dfe8
push 1
lea ecx, [esp + 0xc4]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0363c1f0
add esp, 4
mov ecx, eax
call fcn.0363c0c0
lea ecx, [esp + 0xa8]
call fcn.0363bfe0
lea ecx, [esp + 0x168]
call fcn.03624240
mov edx, edi
lea ecx, [esp + 0x1b8]
call fcn.0370eb80
test eax, eax
jne 0x36feb1f
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fec48
push 0x10114368
push 0x1010dfe8
push 0
lea ecx, [esp + 0xcc]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
lea ecx, [esp + 0xc0]
call fcn.0363bfe0
jmp 0x36fec48
push dword [ebp + 0x30]
mov ecx, dword [ebp + 8]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
mov eax, dword [ecx]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
mov eax, dword [eax]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edi
call eax
mov ecx, dword [esp + 0x58]
push eax
push edi
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov ecx, dword [esp + 0x58]
mov edx, edi
push eax
call fcn.036ffb50
add esp, 0x2c
test eax, eax
je 0x36feb7c
mov eax, dword [ebp + 0x28]
mov edx, edi
mov ecx, dword [eax]
call fcn.036f1f50
mov dword [esp + 0x1c], 1
jmp 0x36fec50
lea ecx, [esp + 0x24]
call fcn.03629f00
lea ecx, [esp + 0x44]
call fcn.036231a0
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret
call dword [0x100f526c]
mov ecx, dword [0x1011f360]
mov dword [esp + 0x24], eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xf8]
call edx
test eax, eax
je 0x36fec48
push 0x10112f18
sub esp, 0xc
mov ecx, esp
push edi
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
call fcn.0362a210
push ecx
push 0x10113de8
push 0x1010dfe8
push 0
lea ecx, [esp + 0xf8]
call fcn.0363b9e0
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0362c940
mov ecx, eax
call fcn.0363c0c0
push dword [esp + 0x24]
mov edi, eax
lea eax, [esp + 0x3c4]
push 0x100f9404
push eax
call dword [0x100f5304]
add esp, 0xc
lea eax, [esp + 0x3c0]
mov ecx, edi
push eax
call fcn.0363c0c0
lea ecx, [esp + 0xd8]
call fcn.0363bfe0
mov edi, dword [esp + 0x44]
mov dword [esp + 0x1c], 0
test esi, esi
je 0x36fec60
cmp esi, 0xffffffff
je 0x36fec60
push esi
call dword [0x100f5250]
test edi, edi
je 0x36fec6b
mov ecx, edi
call fcn.03707920
mov eax, dword [esp + 0x1c]
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp dword [0x1011f61c], 0
je 0x36fed86
mov ecx, esi
call fcn.03708e00
test eax, eax
je 0x36fed7a
mov ecx, esi
call fcn.0370d090
test eax, eax
je 0x36fed86
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0x4c]
call eax
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
call fcn.0362a210
mov esi, dword [esp + 0x38]
push esi
call dword [0x100f514c]
cmp eax, 0xffffffff
je 0x36fece3
xor edi, edi
jmp 0x36fed53
mov ecx, dword [0x1011f360]
mov eax, dword [ecx]
mov eax, dword [eax + 0xf8]
call eax
test eax, eax
je 0x36fed4e
push 0x101143e8
push ecx
push esi
push ecx
push 0x101143d4
push ecx
push 0x101143ac
push 0x100f7c84
push 2
lea ecx, [esp + 0x114]
call fcn.0363b9e0
mov ecx, eax
call fcn.0363c0c0
add esp, 4
mov ecx, eax
call fcn.0363c0c0
add esp, 4
mov ecx, eax
call fcn.0362ee90
add esp, 4
mov ecx, eax
call fcn.0363c0c0
lea ecx, [esp + 0xf0]
call fcn.0363bfe0
mov edi, 1
test esi, esi
je 0x36fed76
mov ecx, esi
call fcn.03707920
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
test edi, edi
jne 0x36fed86
mov edi, dword [esp + 0x20]
add edi, 0x5b8
jmp 0x36fed90
mov edi, dword [esp + 0x20]
add edi, 0x598
push ecx
lea eax, [esp + 0x33]
mov ecx, edi
push eax
call fcn.03621390
test al, al
jne 0x36feda7
mov byte [esp + 0x17], al
jmp 0x36fedaf
inc dword [edi + 0x10]
mov byte [esp + 0x17], 1
mov dword [esp + 0x18], 0
call dword [0x100f5284]
mov esi, eax
lea eax, [edi + 8]
cmp esi, dword [eax]
je 0x36feded
cmp dword [eax], 0
jne 0x36feeee
push 0
push esi
push eax
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x36feeee
mov dword [edi + 0x10], 0
inc dword [edi + 0x10]
mov al, 1
mov esi, dword [edi + 0x18]
mov dword [esp + 0x1c], esi
test al, al
je 0x36fee33
dec dword [edi + 0x10]
jne 0x36fee33
push 0
lea eax, [edi + 8]
mov dword [edi + 0x10], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0xc], 0
lea eax, [edi + 0xc]
jle 0x36fee33
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
test esi, esi
je 0x36ff0ad
jmp 0x36fee40
call dword [0x100f5284]
mov esi, eax
lea eax, [edi + 8]
cmp esi, dword [eax]
je 0x36fee76
cmp dword [eax], 0
jne 0x36fef04
push 0
push esi
push eax
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x36fef04
mov dword [edi + 0x10], 0
inc dword [edi + 0x10]
mov al, 1
mov ecx, dword [esp + 0x1c]
mov esi, ecx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x1c], ecx
test al, al
je 0x36feec2
dec dword [edi + 0x10]
jne 0x36feec2
push 0
lea eax, [edi + 8]
mov dword [edi + 0x10], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0xc], 0
lea eax, [edi + 0xc]
jle 0x36feec2
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
mov ecx, dword [esi + 8]
mov dword [esp + 0x50], ecx
test ecx, ecx
jne 0x36fef1a
mov eax, 0x100
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
call fcn.03707780
mov esi, eax
xor eax, eax
mov word [esi], ax
jmp 0x36fef68
push ecx
push esi
mov ecx, edi
call fcn.03621400
test al, al
jne 0x36feded
jmp 0x36fedf2
push ecx
push esi
mov ecx, edi
call fcn.03621400
test al, al
jne 0x36fee76
jmp 0x36fee7b
xor edx, edx
xor esi, esi
mov eax, ecx
cmp dx, word [ecx]
je 0x36fef30
lea eax, [eax + 2]
xor ecx, ecx
inc esi
cmp cx, word [eax]
jne 0x36fef25
xor ecx, ecx
lea eax, [esi + 0x100]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
call fcn.03707780
mov dword [esp + 0x28], eax
lea eax, [esi*2 + 2]
mov esi, dword [esp + 0x28]
push eax
push dword [esp + 0x54]
push esi
call fcn.037136d0
add esp, 0xc
push dword [ebp + 0x30]
mov ecx, dword [ebp + 8]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
mov eax, dword [ecx]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
mov eax, dword [eax]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call eax
mov ecx, dword [esp + 0x58]
push eax
push esi
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov ecx, dword [esp + 0x58]
mov edx, esi
push eax
call fcn.036ffb50
add esp, 0x2c
test eax, eax
jne 0x36ff120
test esi, esi
je 0x36ff0a1
mov dword [esp + 0x84], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x54], eax
lea eax, [esp + 0x54]
mov dword [esp + 0x80], 0x1011f690
mov dword [esp + 0x88], 0x1011f68c
movdqa xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x58], 0xffffffff
movdqu xmmword [esp + 0x5c], xmm0
mov dword [esp + 0x6c], eax
call dword [0x100f5284]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
cmp eax, dword [ecx]
je 0x36ff042
mov ecx, dword [esp + 0x5c]
cmp dword [ecx], 0
jne 0x36ff108
push 0
push eax
push dword [esp + 0x64]
call dword [0x100f5280]
test eax, eax
sete al
test al, al
je 0x36ff104
mov eax, dword [esp + 0x64]
mov dword [eax], 0
mov eax, dword [esp + 0x64]
inc dword [eax]
mov al, 1
push esi
push 1
push dword [0x1011f2ec]
mov byte [esp + 0x7c], al
call dword [0x100f5100]
cmp byte [esp + 0x70], 0
je 0x36ff0a1
mov esi, dword [esp + 0x6c]
mov eax, dword [esi + 0x10]
dec dword [eax]
jne 0x36ff0a1
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 0x36ff0a1
push eax
call dword [0x100f5290]
mov eax, dword [esi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
mov esi, dword [esp + 0x1c]
test esi, esi
jne 0x36fee40
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, 0xa
jl 0x36fedb7
cmp byte [esp + 0x17], 0
je 0x36ff0fc
dec dword [edi + 0x10]
jne 0x36ff0fc
push 0
lea eax, [edi + 8]
mov dword [edi + 0x10], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0xc], 0
lea eax, [edi + 0xc]
jle 0x36ff0fc
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x28]
push ecx
push eax
lea ecx, [esp + 0x5c]
call fcn.03703a20
test al, al
jne 0x36ff042
jmp 0x36ff04a
test esi, esi
je 0x36ff12b
mov ecx, esi
call fcn.03707920
cmp byte [esp + 0x17], 0
je 0x36ff168
dec dword [edi + 0x10]
jne 0x36ff168
push 0
lea eax, [edi + 8]
mov dword [edi + 0x10], 0
push eax
call dword [0x100f528c]
cmp dword [edi + 0xc], 0
lea eax, [edi + 0xc]
jle 0x36ff168
push eax
call dword [0x100f5290]
mov eax, dword [edi + 0x14]
push 0
push 1
push eax
call dword [0x100f5288]
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret