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

Disassembly:
push 0x90
mov eax, 0x10146673
call fcn.101237a3
mov ebx, ecx
mov dword [ebp - 0x18], ebx
xor edi, edi
cmp dword [ebx + 0x15c], edi
jne 0x10096d8e
cmp dword [ebx + 0x160], edi
jne 0x10096d8e
cmp dword [ebx + 0x64], edi
jne 0x10096511
cmp dword [ebx + 0x9c], edi
jne 0x10096511
cmp dword [ebx + 0x80], edi
jne 0x10096511
cmp dword [ebx + 0xb8], edi
jne 0x10096511
cmp dword [ebx + 0x2c], edi
je 0x10096d8e
xor eax, eax
lea ecx, [ebp - 0x9c]
inc eax
push 0xa
mov dword [0x101a41b0], eax
mov dword [0x101a41b8], eax
call fcn.100173d3
mov eax, dword [ebx + 0x40]
mov dword [ebp - 4], edi
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096592
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x3c]
call fcn.10011756
push dword [eax]
push 0x10172248
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x1009658c
mov ecx, eax
call fcn.10102d25
push eax
push 0x1019bb9c
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x1009658c
mov ecx, dword [eax + 0x330]
test ecx, ecx
je 0x1009658c
cmp dword [ecx + 0x114], edi
je 0x1009658c
push eax
lea ecx, [ebp - 0x9c]
call fcn.10016eaa
cmp dword [ebp - 0x10], 0
jne 0x10096538
mov esi, dword [ebp - 0x98]
jmp 0x100965c8
mov eax, esi
test esi, esi
je 0x10096629
push dword [eax + 8]
mov esi, dword [esi]
push 0x1019bb9c
call fcn.10008cf2
pop ecx
pop ecx
push 1
mov edx, dword [eax]
mov ecx, eax
push edi
push 0xf000
push edi
call dword [edx + 0x368]
test esi, esi
jne 0x1009659a
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096607
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x58]
call fcn.10011756
push dword [eax]
push 0x1019bb9c
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x10096601
push dword [eax + 0x354]
mov ecx, eax
call fcn.100d769a
cmp dword [ebp - 0x10], 0
jne 0x100965d6
push 0xa
lea ecx, [ebp - 0x80]
call fcn.100173d3
lea eax, [ebx + 0x90]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x80]
call fcn.100174c8
mov edi, dword [ebp - 0x7c]
jmp 0x10096662
call fcn.10004bf5
mov eax, edi
test edi, edi
je 0x10096629
push dword [eax + 8]
mov edi, dword [edi]
push 0x1019b8dc
call fcn.10008cf2
pop ecx
pop ecx
push 0x37
mov esi, eax
xor eax, eax
push eax
push eax
push eax
push eax
push eax
mov ecx, esi
call fcn.10015fe2
mov edx, dword [esi]
mov ecx, esi
push ebx
call dword [edx + 0x1dc]
test edi, edi
jne 0x1009662e
push 0xa
lea ecx, [ebp - 0x48]
call fcn.100173d3
mov eax, dword [ebx + 0x24]
mov byte [ebp - 4], 2
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096756
lea eax, [ebx + 0x20]
mov ebx, eax
lea eax, [ebp - 0x10]
mov ecx, ebx
push eax
call fcn.10011756
push 0x10166484
mov esi, dword [eax]
mov ecx, esi
mov dword [ebp - 0x14], esi
call fcn.10008d88
test eax, eax
je 0x100966c7
push esi
push 0x10166484
call fcn.10008cf2
pop ecx
pop ecx
add eax, 0x110
lea ecx, [ebp - 0x48]
push eax
call fcn.100174c8
jmp 0x10096749
push 0x101588a4
mov ecx, esi
call fcn.10008d88
test eax, eax
je 0x10096749
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1cc]
test eax, eax
je 0x100966f0
push esi
lea ecx, [ebp - 0x48]
call fcn.10016eaa
jmp 0x10096749
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1b0]
test eax, eax
je 0x10096749
add esi, 0x298
lea edi, [ebp - 0x2c]
push 0
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x14]
mov ecx, edi
push eax
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov edx, dword [edi]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 0
call dword [edx + 0x238]
mov esi, dword [edi]
mov ecx, edi
push 0
push 1
call dword [esi + 0x1ac]
push eax
mov ecx, edi
call dword [esi + 0x224]
cmp dword [ebp - 0x10], 0
jne 0x10096687
mov ebx, dword [ebp - 0x18]
mov eax, dword [ebx + 0xcc]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x100967ae
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0xc8]
call fcn.10011756
push dword [eax]
push 0x1019b8dc
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x100967a8
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1a8]
push eax
push 0x10159508
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x100967a8
push eax
lea ecx, [ebp - 0x48]
call fcn.10016eaa
cmp dword [ebp - 0x10], 0
jne 0x10096763
mov esi, dword [ebp - 0x44]
test esi, esi
je 0x10096859
mov edi, esi
test esi, esi
je 0x10096629
mov edi, dword [edi + 8]
mov ecx, edi
mov esi, dword [esi]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], edi
mov eax, dword [edi]
call dword [eax + 0x1b0]
test eax, eax
je 0x1009680d
push 0x10165740
mov ecx, edi
call fcn.10008d88
test eax, eax
jne 0x1009680d
mov eax, dword [edi]
lea esi, [edi + 0x1e8]
mov ecx, dword [ebp - 0x18]
push 0
push 3
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x1fc]
mov esi, dword [ebp - 0x14]
test esi, esi
jne 0x100967b9
mov esi, dword [ebp - 0x44]
jmp 0x10096855
mov edi, esi
test esi, esi
je 0x10096629
mov edi, dword [edi + 8]
mov ecx, edi
mov esi, dword [esi]
mov eax, dword [edi]
call dword [eax + 0x1b0]
test eax, eax
je 0x10096855
push 0x1019bb9c
mov ecx, edi
call fcn.10008d88
test eax, eax
jne 0x10096855
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax + 0x2b8]
mov ecx, edi
call fcn.1003b183
test esi, esi
jne 0x10096816
mov eax, dword [ebx + 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096adb
lea eax, [ebx + 0x58]
lea ecx, [ebp - 0x10]
push ecx
mov ecx, eax
call fcn.10011756
mov edi, dword [eax]
mov ecx, edi
mov eax, dword [edi]
call dword [eax + 0x16c]
test eax, eax
je 0x100968e2
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.1001151b
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.1001151b
push dword [ebx + 0xe4]
mov ecx, edi
mov esi, eax
call fcn.1003af45
mov edx, dword [esi]
mov ecx, esi
push edi
call dword [edx + 0x3c0]
push 0x1019bb9c
mov ecx, edi
call fcn.10008d88
test eax, eax
je 0x100968d9
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x1f0]
push 5
mov ecx, edi
call fcn.10016062
mov eax, dword [edi]
xor esi, esi
push esi
mov ecx, edi
call dword [eax + 0x228]
test eax, eax
je 0x10096900
mov edx, dword [eax]
mov ecx, eax
push esi
push esi
push edi
call dword [edx + 0x17c]
push dword [ebx + 0xe4]
mov ecx, edi
call fcn.1003af45
mov esi, 0x1019bb9c
mov ecx, edi
push esi
call fcn.10008d88
test eax, eax
je 0x10096ace
push edi
push esi
call fcn.10008cf2
lea edi, [ebp - 0x2c]
mov dword [ebp - 0x18], eax
pop ecx
pop ecx
lea esi, [eax + 0x298]
movsd dword es:[edi], dword [esi]
push 0
push 0x34
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
mov ecx, edi
push eax
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov edx, dword [edi]
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push 0
call dword [edx + 0x238]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1ac]
xor ecx, ecx
mov dword [ebp - 0x18], eax
test eax, eax
setne cl
push ecx
mov ecx, edi
call fcn.10016062
mov ecx, edi
call fcn.100d50fe
mov esi, eax
mov dword [ebp - 0x14], esi
test esi, esi
je 0x100969b3
mov esi, dword [edi]
mov ecx, eax
mov edx, dword [ecx]
call dword [edx + 0x194]
push eax
mov ecx, edi
call dword [esi + 0x1e0]
mov esi, dword [ebp - 0x14]
mov ecx, esi
push dword [ebp - 0x18]
push edi
mov eax, dword [esi]
call dword [eax + 0x294]
push 0x10165740
mov ecx, edi
call fcn.10008d88
test eax, eax
je 0x10096ace
and dword [ebp - 0x18], 0
test esi, esi
je 0x10096ace
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
push edi
call fcn.10102cfa
push edi
mov ecx, eax
call fcn.10100691
test eax, eax
je 0x10096aaa
mov ecx, dword [eax + 4]
jmp 0x10096aa2
mov edx, dword [ebx]
lea eax, [ecx]
mov ecx, dword [ecx]
push 1
push dword [eax + 8]
mov dword [ebp - 0x1c], ecx
mov ecx, ebx
call dword [edx + 0x24]
push eax
push 0x1019bb9c
call fcn.10008cf2
mov esi, eax
mov dword [ebp - 0x14], esi
pop ecx
pop ecx
test esi, esi
je 0x10096a9f
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x16c]
test eax, eax
je 0x10096a6c
push dword [esi + 0x20]
mov esi, dword [sym.imp.USER32.dll_GetParent]
call esi
push eax
call fcn.1001151b
push dword [eax + 0x20]
call esi
push eax
call fcn.1001151b
push dword [ebx + 0xe4]
mov ecx, dword [ebp - 0x14]
mov esi, eax
call fcn.1003af45
mov edx, dword [esi]
mov ecx, esi
push dword [ebp - 0x14]
call dword [edx + 0x3c0]
mov esi, dword [ebp - 0x14]
jmp 0x10096a8f
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1dc]
test eax, eax
je 0x10096a8f
mov eax, dword [esi]
mov ecx, esi
push 1
push 0
push 0xf000
push 0
call dword [eax + 0x368]
mov eax, dword [esi]
xor ecx, ecx
push ecx
push ecx
push ecx
push edi
mov ecx, esi
call dword [eax + 0x34c]
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
jne 0x100969f7
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x3a4]
test eax, eax
je 0x10096ace
mov eax, dword [edi]
mov ecx, edi
push 0
call dword [eax + 0x3d4]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x210]
cmp dword [ebp - 0x10], 0
lea eax, [ebx + 0x58]
jne 0x1009686a
lea ecx, [ebx + 0x58]
push ecx
lea ecx, [ebx + 0x20]
call fcn.100174c8
and dword [0x101a41b8], 0
mov ecx, ebx
mov eax, dword [ebx]
push 0
call dword [eax + 0x38]
mov eax, dword [ebx + 0xb0]
jmp 0x10096c32
mov esi, eax
mov ecx, ebx
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx]
push 1
push dword [esi + 8]
mov dword [ebp - 0x1c], esi
call dword [eax + 0x24]
push eax
push 0x1019bb9c
call fcn.10008cf2
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x10096c2f
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x170]
test eax, eax
mov eax, dword [edi]
jne 0x10096bb3
mov ecx, edi
call dword [eax + 0x1dc]
test eax, eax
mov ecx, edi
mov eax, dword [edi]
je 0x10096b62
push 1
push 0
push 0xf000
push 0
call dword [eax + 0x368]
jmp 0x10096bc7
call dword [eax + 0x16c]
test eax, eax
je 0x10096bb1
push dword [edi + 0x20]
mov esi, dword [sym.imp.USER32.dll_GetParent]
call esi
push eax
call fcn.1001151b
push dword [eax + 0x20]
call esi
push eax
call fcn.1001151b
push dword [ebx + 0xe4]
mov ecx, edi
mov esi, eax
call fcn.1003af45
mov edx, dword [esi]
mov ecx, esi
push edi
call dword [edx + 0x3c0]
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x1f0]
mov esi, dword [ebp - 0x1c]
mov eax, dword [edi]
xor ecx, ecx
push ecx
push 0xffffffffffffffff
push ecx
push 1
push ecx
push dword [esi + 0xc]
mov ecx, edi
call dword [eax + 0x200]
mov eax, dword [esi + 0x20]
mov ecx, edi
sub eax, dword [esi + 0x18]
mov edx, dword [edi]
push 0
push 0x14
push eax
mov eax, dword [esi + 0x1c]
sub eax, dword [esi + 0x14]
push eax
push dword [esi + 0x18]
push dword [esi + 0x14]
push 0
call dword [edx + 0x238]
mov eax, dword [edi]
mov ecx, edi
push 0
push 0
push dword [esi + 0xc]
push 1
call dword [eax + 0x368]
test eax, eax
je 0x10096c2f
mov ecx, dword [esi + 0x48]
mov dword [eax + 0x11c], ecx
mov ecx, dword [esi + 0x40]
mov dword [eax + 0x114], ecx
mov ecx, dword [esi + 0x44]
mov dword [eax + 0x118], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x4c], edi
mov eax, dword [edi + 0x330]
mov dword [eax + 0x84], ecx
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x10096b02
mov esi, dword [ebx + 0xb0]
jmp 0x10096c6b
lea edi, [esi]
mov esi, dword [esi]
mov ecx, dword [edi + 0x4c]
test ecx, ecx
je 0x10096c6b
mov eax, dword [ecx]
call dword [eax + 0x36c]
test eax, eax
je 0x10096c6b
mov ecx, dword [edi + 0x4c]
push 0
push 0
push dword [edi + 0x10]
mov eax, dword [ecx]
call dword [eax + 0x224]
test esi, esi
jne 0x10096c42
mov eax, dword [ebx + 0x78]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096ca9
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebx + 0x74]
call fcn.10011756
push dword [eax]
push 0x10165740
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x10096ca3
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x3d4]
cmp dword [ebp - 0x10], 0
jne 0x10096c79
push 0xa
lea ecx, [ebp - 0x64]
call fcn.100173d3
lea eax, [ebx + 0x20]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x64]
call fcn.100174c8
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x10096d40
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x64]
call fcn.10017551
mov esi, dword [eax]
push esi
push 0x10172248
call fcn.10008cf2
pop ecx
pop ecx
test eax, eax
je 0x10096cf8
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x2a0]
jmp 0x10096d3a
push esi
push 0x10165740
call fcn.10008cf2
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x10096d3a
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x3a4]
test eax, eax
jne 0x10096d3a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1cc]
test eax, eax
je 0x10096d3a
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax + 0x240]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x60]
cmp dword [ebp - 0x10], 0
jne 0x10096ccd
mov eax, dword [ebx]
mov ecx, ebx
push 1
call dword [eax + 0x34]
lea ecx, [ebx + 0x58]
call fcn.100175ef
lea ecx, [ebx + 0x90]
call fcn.100175ef
lea ecx, [ebx + 0x74]
call fcn.100175ef
and dword [0x101a41b0], 0
lea ecx, [ebp - 0x64]
call fcn.100173f9
lea ecx, [ebp - 0x48]
call fcn.100173f9
lea ecx, [ebp - 0x80]
call fcn.100173f9
lea ecx, [ebp - 0x9c]
call fcn.100173f9
call fcn.1012376c
ret