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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x101a2a82
mov eax, dword fs:[0]
push eax
sub esp, 0x160
push ebx
push esi
push edi
mov eax, dword [0x10218460]
xor eax, esp
push eax
lea eax, [esp + 0x170]
mov dword fs:[0], eax
mov ebx, ecx
push ebx
call fcn.100ee3a0
xor edi, edi
push edi
push edi
push edi
push edi
lea eax, [esp + 0xd4]
call fcn.10049010
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x178], edi
mov eax, dword [ecx + 0x1c]
mov edx, dword [ecx + 0x18]
mov esi, dword [ecx + 0xc]
sub eax, dword [ecx + 0x10]
sub edx, esi
imul eax, edx
test eax, eax
je 0x100f22d5
mov edi, ecx
lea esi, [esp + 0xc4]
call fcn.100490c0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x10], 0
lea eax, [esp + 0x10]
jl 0x100f21ac
lea eax, [esp + 0x14]
mov eax, dword [eax]
mov esi, dword [ebp + 8]
mov edi, eax
add esi, 0x1c
mov dword [esp + 0xd0], eax
mov eax, dword [esi]
mov edx, dword [eax + 0x3c]
mov ecx, esi
mov dword [esp + 0x14], edi
call edx
mov dword [esp + 0x10], eax
cmp eax, edi
lea eax, [esp + 0x10]
jl 0x100f21da
lea eax, [esp + 0x14]
mov eax, dword [eax]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x10], 0
lea eax, [esp + 0x10]
jl 0x100f2202
lea eax, [esp + 0x14]
mov eax, dword [eax]
mov edx, dword [esi]
mov edi, eax
mov dword [esp + 0xd4], eax
mov eax, dword [edx + 0x40]
mov ecx, esi
mov dword [esp + 0x14], edi
call eax
mov dword [esp + 0x10], eax
cmp eax, edi
lea eax, [esp + 0x10]
jl 0x100f222a
lea eax, [esp + 0x14]
mov ecx, dword [eax]
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0xd4], ecx
mov dword [esp + 0x10], 0
lea eax, [esp + 0x10]
jl 0x100f2252
lea eax, [esp + 0x14]
mov eax, dword [eax]
mov edx, dword [esi]
mov edi, eax
mov dword [esp + 0xdc], eax
mov eax, dword [edx + 0x3c]
mov ecx, esi
mov dword [esp + 0x14], edi
call eax
mov dword [esp + 0x10], eax
cmp eax, edi
lea eax, [esp + 0x10]
jl 0x100f227a
lea eax, [esp + 0x14]
mov ecx, dword [eax]
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x10], 0
lea eax, [esp + 0x10]
jl 0x100f22a2
lea eax, [esp + 0x14]
mov eax, dword [eax]
mov edx, dword [esi]
mov edi, eax
mov dword [esp + 0xe0], eax
mov eax, dword [edx + 0x40]
mov ecx, esi
mov dword [esp + 0x14], edi
call eax
mov dword [esp + 0x10], eax
cmp eax, edi
lea eax, [esp + 0x10]
jl 0x100f22ca
lea eax, [esp + 0x14]
mov ecx, dword [eax]
mov dword [esp + 0xe0], ecx
xor edi, edi
lea esi, [ebx + 0x378]
mov byte [ebx + 0x388], 0
mov eax, dword [esi + 0xc]
cmp eax, edi
jl 0x100f22f1
je 0x100f2300
cmp byte [esi + 0x10], 0
je 0x100f2300
call fcn.10177e40
mov dword [esi + 4], edi
mov dword [esi + 0xc], edi
mov byte [esi + 0x11], 1
push 1
lea ecx, [esp + 0xf0]
mov dword [esi + 8], 0
call fcn.100f8550
mov byte [esp + 0x178], 2
fld dword [0x101e93a8]
mov edx, dword [ebx]
fstp dword [esp + 0x110]
mov eax, dword [edx + 0x2c]
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov edi, eax
mov eax, dword [edx + 0x30]
mov ecx, ebx
mov dword [esp + 0x44], edi
call eax
mov edx, dword [ebx + 0x300]
lea esi, [ebx + 0x300]
mov dword [esp + 0x34], eax
mov eax, dword [edx + 0x4c]
mov ecx, esi
call eax
test eax, eax
jne 0x100f2382
push str.int32_vlf_ChannelDetector::process__const_eim_ByteImage_imageA__const_ets_IntRect_regionA__vde_DetInfoArr_infoArrA___const
push str._s:_nno_active_channels
lea eax, [esp + 0x4c]
call fcn.100595b0
add esp, 8
push 0x102051a0
lea ecx, [esp + 0x48]
push ecx
call fcn.1017d044
mov edx, dword [ebx + 0x2dc]
mov eax, dword [edx + 0x4c]
lea ecx, [ebx + 0x2dc]
call eax
mov edx, dword [esi]
mov edx, dword [edx + 0x4c]
mov ecx, esi
mov dword [esp + 0x10], eax
call edx
mov ecx, dword [esp + 0x10]
cmp ecx, eax
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xc4]
mov esi, ebx
sete byte [esp + 0x1b]
call fcn.100efd50
cmp byte [esp + 0x1b], 0
mov eax, dword [ebx + 0x18c]
mov ecx, dword [ebx + 0x1c0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
je 0x100f23e9
mov edx, dword [ebx + 0x2e8]
mov ecx, dword [edx + 8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x2c]
call edx
jmp 0x100f23f9
mov eax, dword [ebx + 0x30c]
mov ecx, dword [eax + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 0x2c]
call eax
mov dword [esp + 0x28], eax
lea ecx, [ecx]
mov eax, ebx
call fcn.100ee1b0
test eax, eax
jle 0x100f27d8
mov esi, dword [esp + 0x28]
mov eax, dword [ebx + 0x25c]
sar esi, 1
sub eax, esi
sub eax, edi
mov dword [esp + 0x3c], eax
mov eax, dword [ebx + 0x260]
sub eax, esi
sub eax, dword [esp + 0x34]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x4c]
call fcn.100f3170
mov ecx, dword [esp + 0x34]
mov byte [esp + 0x178], 3
mov edx, dword [ebx + 0x16c]
mov eax, dword [edx + 0x3c]
mov dword [esp + 0x54], edi
lea edi, [ebx + 0x16c]
mov dword [esp + 0x58], ecx
mov ecx, edi
call eax
mov edx, dword [edi]
mov dword [esp + 0x5c], eax
mov eax, dword [edx + 0x40]
mov ecx, edi
call eax
mov edx, dword [ebx + 0x1a4]
lea ecx, [ebx + 0x1a4]
mov dword [esp + 0x60], eax
mov eax, dword [edx + 0x3c]
call eax
mov ecx, dword [ebx + 0x154]
mov dword [esp + 0x64], eax
xor eax, eax
cmp byte [esp + 0x1b], al
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
je 0x100f26ca
lea edx, [esp + 0x4c]
push edx
lea eax, [esp + 0x8c]
push eax
call fcn.100f31f0
cmp esi, dword [esp + 0x38]
mov byte [esp + 0x178], 4
mov dword [esp + 0x30], esi
jg 0x100f26b9
mov ecx, dword [esp + 0x34]
lea edx, [ecx + esi*2]
mov dword [esp + 0x24], edx
mov dword [esp + 0x40], 0
mov eax, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x44]
mov edi, ebx
call fcn.100efc50
mov ecx, dword [esp + 0x30]
mov eax, dword [ebx + 0x154]
mov edx, ecx
imul edx, dword [esp + 0x5c]
add edx, eax
mov eax, ecx
sub eax, dword [ebx + 0x1f0]
add edx, esi
imul eax, dword [esp + 0x64]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x14]
add eax, esi
cmp esi, dword [esp + 0x3c]
lea edx, [edx + eax*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x10]
lea eax, [edx + eax*4]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x2c], esi
jg 0x100f269d
mov dword [esp + 0x1c], 0
lea ebx, [ebx]
mov ecx, dword [esp + 0x2c]
lea eax, [ebx + 0x34c]
push eax
push ebx
lea edi, [esp + 0x54]
mov dword [esp + 0x70], ecx
call fcn.100f0c90
cmp eax, 0xffffffff
je 0x100f266c
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x40]
lea ecx, [edx + esi]
cmp eax, ecx
mov dword [esp + 0x20], eax
jg 0x100f266c
lea esp, [esp]
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x98]
mov eax, dword [ebx + 0x154]
imul edi, edx
mov ecx, dword [esp + 0x2c]
sub edi, esi
add edi, eax
mov eax, edx
sub eax, dword [ebx + 0x1f0]
add edi, ecx
imul eax, dword [esp + 0xa0]
sub eax, esi
mov dword [esp + 0xb0], edi
mov edi, dword [esp + 0x14]
add eax, ecx
lea edi, [edi + eax*4]
mov dword [esp + 0xb4], edi
mov edi, dword [esp + 0x10]
lea eax, [edi + eax*4]
mov edi, dword [esp + 0x1c]
mov dword [esp + 0xb8], eax
lea eax, [ecx + esi]
cmp edi, eax
mov dword [esp + 0xa8], edx
jg 0x100f2653
jmp 0x100f2600
lea ecx, [esp + 0xec]
push ecx
lea eax, [ebx + 0x370]
push eax
lea eax, [ebx + 0x34c]
push eax
lea edx, [esp + 0x94]
push edx
push ebx
mov dword [esp + 0xb8], edi
call fcn.100f0dc0
add dword [esp + 0xb0], 1
mov eax, 4
add dword [esp + 0xb4], eax
add dword [esp + 0xb8], eax
mov eax, dword [esp + 0x2c]
add edi, 1
add eax, esi
cmp edi, eax
jle 0x100f2600
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x30]
add eax, 1
add ecx, esi
cmp eax, ecx
mov dword [esp + 0x20], eax
jle 0x100f2590
mov eax, dword [esp + 0x28]
add dword [esp + 0x74], eax
add dword [esp + 0x1c], eax
lea ecx, [eax*4]
add dword [esp + 0x78], ecx
add dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x2c]
add ecx, eax
cmp ecx, dword [esp + 0x3c]
mov dword [esp + 0x2c], ecx
jle 0x100f2550
jmp 0x100f26a1
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
add dword [esp + 0x40], eax
add ecx, eax
cmp ecx, dword [esp + 0x38]
mov dword [esp + 0x30], ecx
jle 0x100f24e2
lea ecx, [esp + 0xbc]
call fcn.100f3290
jmp 0x100f27c0
lea edx, [ebx + 0x34c]
xor eax, eax
call fcn.1005f330
cmp esi, dword [esp + 0x38]
mov dword [esp + 0x1c], esi
jg 0x100f27c0
mov edx, dword [esp + 0x34]
lea eax, [edx + esi*2]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], 0
jmp 0x100f2700
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push ecx
mov edi, ebx
call fcn.100efc50
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebx + 0x154]
mov edx, ecx
imul edx, dword [esp + 0x5c]
add edx, eax
mov eax, ecx
sub eax, dword [ebx + 0x1f0]
add edx, esi
imul eax, dword [esp + 0x64]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x14]
add eax, esi
cmp esi, dword [esp + 0x3c]
lea edx, [edx + eax*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x10]
lea eax, [edx + eax*4]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x6c], ecx
mov edi, esi
jg 0x100f27a4
lea ebx, [ebx]
lea ecx, [esp + 0xec]
push ecx
lea eax, [ebx + 0x370]
push eax
lea eax, [ebx + 0x34c]
push eax
lea edx, [esp + 0x58]
push edx
push ebx
mov dword [esp + 0x7c], edi
call fcn.100f0dc0
mov ecx, dword [esp + 0x28]
add dword [esp + 0x74], ecx
lea eax, [ecx*4]
add dword [esp + 0x78], eax
add dword [esp + 0x7c], eax
add edi, ecx
cmp edi, dword [esp + 0x3c]
jle 0x100f2760
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
add dword [esp + 0x20], ecx
add eax, ecx
cmp eax, dword [esp + 0x38]
mov dword [esp + 0x1c], eax
jle 0x100f2700
lea ecx, [esp + 0x80]
mov byte [esp + 0x178], 2
call fcn.100f3290
mov edi, dword [esp + 0x44]
mov esi, ebx
call fcn.100effe0
test al, al
jne 0x100f2400
mov esi, dword [ebp + 0x10]
mov byte [esi + 0x18], al
mov eax, dword [esi + 0x14]
xor edx, edx
cmp eax, edx
jl 0x100f27fd
je 0x100f283e
cmp byte [esi + 0x18], dl
je 0x100f283e
cmp byte [esi + 0x19], 0
je 0x100f282f
mov eax, dword [esi + 0xc]
cmp eax, edx
je 0x100f282f
cmp dword [eax - 4], edx
lea ecx, [eax - 4]
je 0x100f2826
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
lea ecx, [edx + eax + 4]
mov eax, dword [ecx]
mov edx, dword [eax]
push 3
call edx
jmp 0x100f282f
push ecx
call fcn.10178e5d
add esp, 4
xor edx, edx
mov dword [esi + 0x10], edx
mov dword [esi + 0xc], edx
mov dword [esi + 0x14], edx
mov byte [esi + 0x19], 1
mov dword [esi + 0x10], edx
mov eax, dword [ebx + 0x380]
cmp eax, edx
jle 0x100f2a8f
push 1
lea ecx, [esp + 0x14c]
call fcn.1005eca0
push 1
lea ecx, [esp + 0x128]
call fcn.1005eca0
lea ecx, [esp + 0x124]
push ecx
mov ecx, dword [esp + 0x38]
lea edx, [esp + 0x14c]
push edx
push ecx
push edi
mov byte [esp + 0x188], 7
fld dword [ebx + 0x4c]
push ecx
lea eax, [ebx + 0x370]
fstp dword [esp]
push eax
call fcn.100f9550
xor ecx, ecx
cmp eax, ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], ecx
jle 0x100f2a5a
jmp 0x100f28c0
mov edx, dword [esp + 0x130]
mov edi, dword [edx + ecx*4]
cmp edi, dword [ebx + 0xd8]
mov dword [esp + 0x14], edi
jl 0x100f2a47
mov eax, dword [esp + 0x10]
push edi
push eax
lea ecx, [esp + 0x150]
push ecx
lea eax, [ebx + 0x370]
push eax
lea edx, [esp + 0x98]
push edx
push ebx
call fcn.100f0460
mov byte [esp + 0x178], 8
cmp byte [ebx + 0x5c], 0
je 0x100f2963
mov eax, dword [esp + 0xb0]
mov ecx, dword [ebx + 0x30c]
lea eax, [eax + eax*2]
mov ecx, dword [ecx + eax*4 + 8]
mov eax, dword [ebp + 8]
lea edx, [esp + 0x88]
push edx
push eax
lea edx, [esp + 0x54]
push edx
push ebx
call fcn.100f0310
mov byte [esp + 0x178], 9
push eax
mov eax, dword [esp + 0x8c]
mov edx, dword [eax + 0x28]
lea ecx, [esp + 0x8c]
call edx
lea ecx, [esp + 0x7c]
mov byte [esp + 0x178], 8
call fcn.100f8710
fld dword [esp + 0xac]
fmul qword [0x101e94c0]
fldz
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x100f2990
fchs
call fcn.10189a7c
fld1
fld st(0)
fsub st(2)
fxch st(2)
faddp st(1)
fdivp st(1)
jmp 0x100f299f
call fcn.10189a7c
fld st(0)
fld1
fsub st(1), st(0)
faddp st(2)
fdivrp st(1)
mov eax, dword [ebx + 0xbc]
fstp dword [esp + 0xac]
test eax, eax
fild dword [esp + 0xd0]
fadd dword [esp + 0x94]
fstp dword [esp + 0x94]
fild dword [esp + 0xd4]
fadd dword [esp + 0x98]
fstp dword [esp + 0x98]
je 0x100f29f7
fld dword [esp + 0xa4]
push ecx
mov edi, eax
fstp dword [esp]
call fcn.100f5200
fstp dword [esp + 0xa4]
mov edi, dword [esp + 0x14]
mov eax, dword [ebx + 0xc8]
test eax, eax
je 0x100f2a1e
fld dword [esp + 0xa0]
push ecx
mov edi, eax
fstp dword [esp]
call fcn.100f5200
fstp dword [esp + 0xa0]
mov edi, dword [esp + 0x14]
lea eax, [esp + 0x88]
push eax
call fcn.100f8ea0
lea ecx, [esp + 0xb8]
mov byte [esp + 0x178], 7
call fcn.100f8710
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
add dword [esp + 0x10], edi
add ecx, 1
cmp ecx, eax
mov dword [esp + 0x24], ecx
jl 0x100f28c0
lea ecx, [esp + 0x124]
push ecx
mov byte [esp + 0x17c], 6
call fcn.10001b50
lea edx, [esp + 0x148]
push edx
mov dword [esp + method.ert_RefCounter.virtual_0], vtable.ert_RefCounter.0
mov byte [esp + 0x17c], 2
call fcn.10001b50
cmp dword [esi + 0x10], 0
jne 0x100f2aaf
fld dword [0x101e92bc]
lea eax, [esp + 0xec]
push eax
fstp dword [esp + 0x114]
call fcn.100f8ea0
mov esi, dword [esi + 0x10]
lea ecx, [esp + 0x11c]
call fcn.100f8710
lea ecx, [esp + 0xe4]
mov dword [esp + method.ert_RefCounter.virtual_0], vtable.ert_RefCounter.0
call fcn.10049090
mov eax, esi
mov ecx, dword [esp + 0x170]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc