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

Disassembly:
sub esp, 0x3c
mov ecx, dword [esp + 0x4c]
xorps xmm0, xmm0
push ebx
push ebp
mov ebp, dword [esp + 0x48]
or ebx, 0xffffffff
push esi
movlpd qword [esp + 0x40], xmm0
push edi
mov esi, dword [ebp + 0x178]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x24], ebx
mov edi, dword [esi + 0x190]
mov dword [esp + 0x18], edi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
push ecx
jmp 0x1002d595
test eax, eax
je 0x1002d5ee
mov eax, dword [esp + 0x24]
and eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], edx
cmp eax, 0xffffffff
je 0x1002d2f2
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
jmp 0x1002d2f6
mov eax, ebx
mov ecx, edx
cmp dword [esp + 0x50], 0
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], ecx
je 0x1002d30d
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
jmp 0x1002d313
or eax, 0xffffffff
or ecx, 0xffffffff
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x48]
and eax, dword [esi + 0x4c]
mov dword [esi + 0x54], ecx
cmp eax, 0xffffffff
je 0x1002d374
cmp dword [esi + 0x4c], edx
ja 0x1002d374
jb 0x1002d330
cmp dword [esi + 0x48], ebx
jae 0x1002d374
sub ebx, dword [esi + 0x48]
mov edi, edx
mov eax, dword [esi + 0x70]
sbb edi, dword [esi + 0x4c]
and eax, dword [esi + 0x74]
cmp eax, 0xffffffff
je 0x1002d366
mov eax, dword [esi + 0x74]
push 7
pop ecx
mul ecx
push 7
mov ecx, eax
mov eax, dword [esi + 0x70]
pop edx
mul edx
add ecx, edx
mov edx, dword [esp + 0x20]
add ebx, eax
adc edi, ecx
shrd ebx, edi, 3
shr edi, 3
mov dword [esi + 0x70], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esi + 0x74], edi
mov edi, dword [esp + 0x18]
mov ecx, dword [esi + 0x22c]
mov dword [esi + 0x4c], edx
mov edx, dword [esi + 0x228]
mov eax, edx
and eax, ecx
mov dword [esi + 0x48], ebx
cmp eax, 0xffffffff
je 0x1002d3a3
cmp dword [esp + 0x20], ecx
jb 0x1002d5e4
ja 0x1002d3a3
cmp ebx, edx
jb 0x1002d5e4
push dword [esp + 0x54]
push ebp
call fcn.1002d150
pop ecx
pop ecx
test eax, eax
jne 0x1002d63e
lea ecx, [esi + 0x130]
cmp dword [ecx], eax
je 0x1002d3d0
lea eax, [esi + 0xd0]
cmp dword [eax], 0
je 0x1002d546
mov eax, dword [esi + 0x190]
cmp eax, edi
jne 0x1002d55a
lea edi, [ebp + 0xc]
push edi
call sub.glib_lite.dll_Ordinal_219
mov eax, dword [esp + 0x30]
and eax, dword [esp + 0x34]
mov edx, dword [esp + 0x40]
mov dword [esi + 0x20], edx
pop ecx
mov ecx, dword [esp + 0x40]
mov dword [esi + 0x24], ecx
cmp eax, 0xffffffff
je 0x1002d40d
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
jmp 0x1002d40f
mov eax, edx
push edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], ecx
call sub.glib_lite.dll_Ordinal_220
cmp dword [esp + 0x54], 0
pop ecx
je 0x1002d5ee
mov edi, dword [esp + 0x20]
mov eax, ebx
and eax, edi
cmp eax, 0xffffffff
jne 0x1002d43a
or ecx, eax
or edx, eax
jmp 0x1002d4b3
mov ecx, ebx
mov ebx, dword [ebp + 0x178]
add ecx, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov eax, dword [ebx + 0xc]
adc edx, edi
mov edi, dword [ebx + 8]
test eax, eax
jg 0x1002d48a
jl 0x1002d460
test edi, edi
jae 0x1002d48a
neg edi
adc eax, 0
neg eax
cmp eax, edx
ja 0x1002d477
jb 0x1002d471
cmp edi, ecx
jae 0x1002d477
sub ecx, edi
sbb edx, eax
jmp 0x1002d48e
xorps xmm0, xmm0
movlpd qword [esp + 0x10], xmm0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
jmp 0x1002d48e
add ecx, edi
adc edx, eax
cmp edx, dword [ebx + 0x14]
jb 0x1002d4a2
ja 0x1002d49a
cmp ecx, dword [ebx + 0x10]
jbe 0x1002d4a2
sub ecx, dword [ebx + 0x10]
sbb edx, dword [ebx + 0x14]
jmp 0x1002d4b3
xorps xmm0, xmm0
movlpd qword [esp + 0x10], xmm0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edi, dword [esi + 0x248]
mov eax, edi
mov ebx, dword [esi + 0x24c]
and eax, ebx
cmp eax, 0xffffffff
je 0x1002d4e1
mov eax, ecx
and eax, edx
cmp eax, 0xffffffff
je 0x1002d4db
cmp edx, ebx
ja 0x1002d4e1
jb 0x1002d4db
cmp ecx, edi
jae 0x1002d4e1
mov ecx, edi
mov edx, ebx
jmp 0x1002d4f4
and dword [esi + 0x250], 0
mov dword [esi + 0x240], ecx
mov dword [esi + 0x244], edx
lea eax, [esp + 0x44]
push eax
push edx
push ecx
push ebp
call fcn.100305be
mov edx, eax
add esp, 0x10
cmp edx, 4
je 0x1002d5ee
cmp dword [ebp + 0x168], 0
jne 0x1002d639
cmp edx, 2
jne 0x1002d5f8
mov eax, dword [esi + 0x190]
mov edi, dword [esp + 0x18]
cmp eax, edi
jne 0x1002d55a
mov ebx, dword [esp + 0x1c]
mov dword [esi + 0xc8], 1
jmp 0x1002d3a3
push eax
push ecx
lea eax, [ebp + 0xf8]
push eax
push ebp
call fcn.10030a36
add esp, 0x10
jmp 0x1002d560
mov edi, eax
mov dword [esp + 0x18], edi
push dword [esp + 0x5c]
or eax, 0xffffffff
mov dword [esi + 0x30], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esi + 0x34], eax
and dword [esp + 0x14], 0
lea eax, [esi + 0xd0]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x58], 1
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x5c]
push eax
push dword [esp + 0x78]
push ebp
call fcn.1002e1a4
add esp, 0x2c
cmp dword [esp + 0x10], 0
je 0x1002d2c5
mov eax, dword [esp + 0x58]
mov dword [eax], 1
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
push 1
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], ecx
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push edx
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x74]
push ebp
call fcn.1002e710
mov ecx, dword [esp + 0x80]
add esp, 0x28
mov dword [ecx], eax
jmp 0x1002d5ee
push 0xfffffffffffffffe
pop eax
jmp 0x1002d5f0
mov ecx, dword [esp + 0x5c]
and dword [ecx], 0
jmp 0x1002d5f0