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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
mov eax, dword [0x101d32d0]
xor eax, esp
mov dword [esp + 0x78], eax
or dword [esp + 0x48], 0xffffffff
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x48], esi
call fcn.101a47fe
mov edx, dword [esi + 8]
lea eax, [esi + 0x14]
xor ecx, ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x44], ecx
push 4
pop ebx
test edx, edx
je 0x1019bdd5
mov ebx, dword [esi + 0x88]
mov eax, dword [eax]
mov edi, dword [eax]
cmp ebx, dword [edi + 4]
jne 0x1019bdc8
mov edi, dword [edi + 0xc]
cmp ecx, edi
ja 0x1019bdc8
lea ecx, [edi + 1]
mov dword [esp + 0x44], ecx
add eax, 4
sub edx, 1
jne 0x1019bdb3
push 4
pop ebx
jmp 0x1019bdd9
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0xc]
lea edi, [ecx + eax*8]
xor ecx, ecx
mov eax, edi
mul ebx
seto cl
neg ecx
or ecx, eax
call fcn.101055aa
mov ebx, eax
mov dword [esp + 0x5c], ebx
test ebx, ebx
je 0x1019c4a8
mov eax, edi
shl eax, 2
push eax
push 0
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor ecx, ecx
add esp, 0xc
cmp dword [esi + 8], ecx
jbe 0x1019be40
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov edx, dword [eax + ecx*4]
mov eax, dword [esi + 0x88]
cmp eax, dword [edx + 4]
jne 0x1019be3a
mov edi, dword [edx + 0xc]
mov eax, dword [edx + 0x10]
cmp dword [ebx + edi*4], eax
ja 0x1019be3a
inc eax
mov dword [ebx + edi*4], eax
inc ecx
cmp ecx, dword [esi + 8]
jb 0x1019be17
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x24], eax
mov dword [esp + 0x58], ebx
test eax, eax
je 0x1019c463
mov edx, eax
mov eax, dword [esi + 0x18]
mov ebx, dword [eax + ebx*4]
mov dword [esp + 0x4c], ebx
mov edi, dword [ebx]
test edi, 0xfff00000
je 0x1019c442
and dword [esp + 0x18], 0
lea eax, [esp + 0x50]
push eax
push 0
mov ecx, ebx
mov dword [esp + 0x18], 1
call fcn.1018f783
test eax, eax
je 0x1019c3c4
mov edi, dword [esp + 0x24]
push 0xffffffffffffffff
push edi
push ebx
lea ecx, [esp + 0x50]
push ecx
push dword [esp + 0x6c]
mov ecx, esi
push eax
push dword [esp + 0x68]
call fcn.101a15cf
neg eax
lea ecx, [esp + 0x50]
push ecx
sbb eax, eax
mov ecx, ebx
and dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
inc eax
push eax
mov dword [esp + 0x20], eax
call fcn.1018f783
test eax, eax
jne 0x1019be96
mov edi, dword [ebx]
cmp dword [esp + 0x10], eax
jne 0x1019c3c4
mov ecx, ebx
call fcn.1018f81f
test eax, eax
jne 0x1019c3c4
push eax
push eax
mov ecx, ebx
mov dword [esp + 0x28], eax
call fcn.1018f783
mov ecx, eax
mov dword [esp + 0x38], ecx
test ecx, ecx
je 0x1019bf10
mov eax, dword [ebx + 4]
xor edx, edx
div ecx
mov dword [esp + 0x14], eax
jmp 0x1019bf15
and dword [esp + 0x14], 0
xor eax, eax
lea edi, [esp + 0x64]
stosd dword es:[edi], eax
xor edx, edx
mov dword [esp + 0x1c], edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, dword [esp + 0x38]
test edi, edi
je 0x1019c43e
cmp dword [esp + edx*4 + 0x64], 0
jne 0x1019c1cb
lea ecx, [edx + 1]
mov dword [esp + 0x34], 1
mov dword [esp + 0x10], ecx
cmp ecx, edi
jae 0x1019bffc
cmp dword [esp + ecx*4 + 0x64], 0
jne 0x1019bfeb
mov eax, dword [esp + 0x14]
xor edx, edx
test eax, eax
je 0x1019bfe3
mov eax, dword [ebx + 8]
mov esi, edi
mov ebx, dword [esp + 0xc]
shl esi, 2
mov dword [esp + 0x3c], esi
mov ebx, dword [ebx]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x1c]
lea edi, [eax + ebx*4]
lea ebx, [eax + ecx*4]
mov ecx, esi
mov esi, dword [esp + 0x28]
mov eax, dword [ebx]
mov eax, dword [esi + eax*4]
mov dword [esp + 0x3c], eax
mov eax, dword [edi]
mov eax, dword [esi + eax*4]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x18], eax
mov eax, dword [eax + 4]
cmp eax, dword [esi + 4]
jne 0x1019bfd3
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 8]
cmp eax, dword [esi + 8]
jne 0x1019bfd3
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0xc]
cmp eax, dword [esi + 0xc]
mov eax, dword [esp + 0x14]
jne 0x1019bfd7
inc edx
add ebx, ecx
add edi, ecx
cmp edx, eax
jb 0x1019bf8a
jmp 0x1019bfd7
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
cmp edx, eax
jne 0x1019bfeb
inc dword [esp + 0x34]
inc ecx
mov dword [esp + 0x10], ecx
cmp ecx, edi
jb 0x1019bf53
mov esi, dword [esp + 0x48]
mov eax, dword [ebx]
mov ecx, esi
xor eax, dword [esp + 0x34]
push 0xffffffffffffffff
and eax, 0xfffff
xor eax, dword [ebx]
push 0xffffffffffffffff
push eax
call fcn.101a567c
mov ecx, eax
mov dword [esp + 0x18], ecx
cmp ecx, 0xffffffff
je 0x1019c4a1
mov eax, dword [esi + 0x18]
push ebx
mov edx, dword [eax + ecx*4]
mov ecx, edx
mov dword [esp + 0x14], edx
call fcn.1018f75e
mov ecx, edi
cmp edi, dword [esp + 0x1c]
jbe 0x1019c190
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc]
lea eax, [eax*4 - 4]
mov dword [esp + 0x40], eax
dec ecx
mov dword [esp + 0x30], ecx
cmp dword [esp + ecx*4 + 0x64], 0
jne 0x1019c182
xor ecx, ecx
cmp dword [esp + 0x14], ecx
jbe 0x1019c13d
mov edx, dword [esi]
mov eax, dword [ebx + 8]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x60], edx
mov edx, edi
shl edx, 2
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x3c]
shl esi, 2
add esi, eax
lea ebx, [eax + edx*4]
mov edx, dword [esp + 0x60]
mov eax, dword [esi]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx]
mov eax, dword [edx + eax*4]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
mov eax, dword [eax + 4]
cmp eax, dword [edx + 4]
jne 0x1019c0dc
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 8]
cmp eax, dword [edx + 8]
jne 0x1019c0dc
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 0xc]
cmp eax, dword [edx + 0xc]
jne 0x1019c0dc
inc ecx
add esi, edi
add ebx, edi
cmp ecx, dword [esp + 0x14]
jb 0x1019c097
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 0x38]
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
cmp ecx, dword [esp + 0x14]
jb 0x1019c17e
mov esi, dword [esp + 0x30]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x40]
shl esi, 2
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 8]
mov ecx, dword [edx + 8]
mov eax, dword [esi + eax]
add esi, dword [esp + 0x3c]
mov dword [edi + ecx], eax
mov ecx, dword [esp + 0x34]
shl ecx, 2
add edi, ecx
sub dword [esp + 0x28], 1
jne 0x1019c109
mov ecx, dword [esp + 0x30]
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x64], 1
mov eax, dword [ebx]
and eax, 0xfff00000
cmp eax, 0x50000000
je 0x1019c177
mov eax, dword [ebx + 0x10]
mov edi, dword [esp + 0x30]
mov ecx, dword [edx + 0x10]
mov eax, dword [eax + edi*4]
mov edi, dword [esp + 0x40]
mov dword [edi + ecx], eax
mov ecx, edi
mov eax, dword [edx + 0x10]
mov edi, dword [esp + 0x38]
mov ecx, dword [ecx + eax]
mov eax, dword [esi]
mov eax, dword [eax + ecx*4]
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x48], ecx
push 4
pop eax
sub dword [esp + 0x40], eax
mov ecx, dword [esp + 0x30]
cmp ecx, dword [esp + 0x1c]
ja 0x1019c055
mov esi, dword [esp + 0x48]
mov eax, dword [ebx]
and eax, 0xfff00000
cmp eax, 0x50000000
jne 0x1019c1c7
cmp dword [esp + 0x34], edi
jne 0x1019c252
mov eax, dword [ebx + 0x10]
mov ecx, dword [edx + 0x10]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [edx + 0x10]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x48], ecx
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
inc edx
mov dword [esp + 0x1c], edx
cmp edx, edi
jb 0x1019bf31
test eax, eax
je 0x1019c43e
mov ecx, esi
push 0xffffffffffffffff
push 0xffffffffffffffff
cmp eax, 2
jne 0x1019c30e
push 0x20400001
call fcn.101a567c
mov ebx, dword [esp + 0xc]
mov edi, eax
xor edx, edx
mov ecx, dword [esp + edx*4 + 0x74]
mov eax, dword [ebx]
mov eax, dword [eax + ecx*4]
mov ecx, dword [eax + 0x48]
mov eax, dword [esi + 0x18]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ecx]
and eax, 0xfff00000
cmp eax, 0x10000000
jne 0x1019c243
and dword [ecx], 0
mov ecx, dword [esp + edx*4 + 0x74]
mov eax, dword [ebx]
mov eax, dword [eax + ecx*4]
mov ecx, dword [eax + 0x48]
mov eax, dword [esi + 0x18]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + edx*4 + 0x74], eax
inc edx
cmp edx, 2
jb 0x1019c205
mov ebx, dword [esp + 0x4c]
jmp 0x1019c320
fldz
push ecx
push ecx
fstp qword [esp]
push dword [esp + 0x28]
mov ecx, esi
push dword [esp + 0x50]
push dword [esi + 0x88]
call fcn.101a5632
mov edx, dword [esp + 0x10]
mov ecx, eax
mov eax, dword [esp + 0x20]
mov dword [esp + eax*4 + 0x74], ecx
mov eax, dword [edx + 0x10]
mov dword [eax], ecx
mov eax, dword [edx + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
cmp eax, 0xffffffff
je 0x1019c4a1
mov eax, dword [ebx + 0x10]
mov edx, dword [esp + 0xc]
mov edi, dword [esp + 0x2c]
push 0
mov eax, dword [eax]
mov ecx, dword [edx]
push dword [esp + 0x14]
mov eax, dword [ecx + eax*4]
mov ecx, dword [ecx + edi*4]
mov eax, dword [eax + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [ebx + 0x10]
mov ecx, dword [edx]
mov eax, dword [eax]
mov edx, dword [ecx + eax*4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x10]
mov eax, dword [eax]
mov ecx, dword [ecx + eax*4]
mov eax, dword [edx + 0x18]
mov dword [ecx + 0x18], eax
mov ecx, esi
call fcn.10199cc2
mov edi, dword [esp + 0x38]
test eax, eax
js 0x1019c4ad
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x1c]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x48], ecx
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x1019c1cf
and eax, 0xfffff
or eax, 0x50000000
push eax
call fcn.101a567c
mov edi, eax
cmp edi, 0xffffffff
je 0x1019c4a8
mov eax, dword [esi + 0x18]
push ebx
mov edx, dword [eax + edi*4]
mov ecx, edx
mov dword [esp + 0x30], edx
call fcn.1018f75e
mov eax, dword [ebx + 0x10]
mov ecx, dword [edx + 0x10]
mov ebx, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [edx + 0x10]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x48], edi
mov edi, ebx
shl edi, 2
lea eax, [esp + 0x74]
push edi
push eax
push dword [edx + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
cmp ebx, 2
je 0x1019c3be
mov edx, dword [esp + 0x54]
cmp edx, 0xffffffff
jne 0x1019c3a2
fld1
push ecx
push ecx
fstp qword [esp]
push 0
push 0
push dword [esi + 0x78]
mov ecx, esi
call fcn.101a5632
mov edx, eax
mov dword [esp + 0x54], edx
cmp edx, 0xffffffff
je 0x1019c4a1
test ebx, ebx
je 0x1019c3be
mov ecx, dword [esp + 0x2c]
push 4
pop esi
mov eax, dword [ecx + 8]
mov dword [edi + eax], edx
add edi, esi
sub ebx, 1
jne 0x1019c3ad
mov esi, dword [esp + 0x48]
inc dword [esp + 0x44]
jmp 0x1019c43e
push dword [ebx + 0xc]
mov ecx, esi
push dword [ebx + 4]
push edi
call fcn.101a567c
mov dword [esp + 0x2c], eax
cmp eax, 0xffffffff
je 0x1019c4a1
mov ecx, dword [esi + 0x18]
push ebx
mov edi, dword [ecx + eax*4]
mov ecx, edi
call fcn.1018f75e
mov ecx, dword [ebx + 4]
shl ecx, 2
push ecx
push dword [ebx + 8]
push dword [edi + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [ebx + 0xc]
add esp, 0xc
shl eax, 2
push eax
push dword [ebx + 0x10]
push dword [edi + 0x10]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
xor edx, edx
add esp, 0xc
cmp dword [ebx + 0xc], edx
jbe 0x1019c43e
mov esi, dword [esp + 0x2c]
mov eax, dword [edi + 0x10]
mov ecx, dword [eax + edx*4]
inc edx
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x48], esi
cmp edx, dword [ebx + 0xc]
jb 0x1019c422
mov esi, dword [esp + 0x48]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
inc ebx
mov dword [esp + 0x58], ebx
cmp ebx, edx
jb 0x1019be57
xor ecx, ecx
mov eax, dword [esi + 0x18]
mov eax, dword [eax + ecx*4]
and dword [eax], 0
inc ecx
cmp ecx, edx
jb 0x1019c455
mov ecx, esi
call fcn.10192c90
mov edi, eax
test edi, edi
je 0x1019c472
js 0x1019c492
mov ecx, esi
call fcn.101973bd
mov edi, eax
test edi, edi
je 0x1019c481
js 0x1019c492
mov ecx, esi
call fcn.101931b4
mov edi, eax
test edi, edi
je 0x1019c490
js 0x1019c492
xor edi, edi
push dword [esp + 0x5c]
call dword [sym.imp.PhotoBase.dll_void___cdecl_BasePrivate::Delete_void__]
pop ecx
mov eax, edi
jmp 0x1019c4ad
mov edi, 0x8007000e
jmp 0x1019c492
mov eax, 0x8007000e
mov ecx, dword [esp + 0x84]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.101b9e50
mov esp, ebp
pop ebp
ret