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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008d779
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf4
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov esi, dword [eax + 8]
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x68], ecx
lea eax, [edx + edx*2]
mov dword [ebp - 0x64], 0x3000102
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], 3
mov dword [ebp - 0x54], eax
test ecx, ecx
jne 0x10002462
test edx, edx
jne 0x10002cf5
test esi, esi
jne 0x10002cf5
push str.zxing_cpp_deprecation_warning:_ImageView_nullptr__...__will_throw_in_the_future__use_ImageView___n
push 2
call fcn.10074fdb
add esp, 4
push eax
call fcn.10002010
add esp, 8
jmp 0x10002472
test edx, edx
jle 0x10002d1b
test esi, esi
jle 0x10002d1b
mov esi, dword [ebp + 0xc]
movzx eax, byte [ebp - 0x33]
mov cl, byte [ebp - 0x32]
and al, 0x8d
and byte [ebp - 0x31], 0xc0
or al, 0xd
mov byte [ebp - 0x33], al
and cl, 0xe8
mov eax, 0x1f4
mov word [ebp - 0x2e], ax
mov eax, dword [esi]
mov dword [ebp - 0x2c], eax
mov al, byte [esi + 0x14]
and al, 3
or cl, al
mov eax, dword [esi + 0x18]
or cl, 8
cmp dword [esi + 8], 0
mov byte [ebp - 0x32], cl
setne cl
neg eax
sbb al, al
and al, 0x10
lea ecx, [ecx*2 + 0x20]
or cl, al
mov eax, dword [esi + 0x10]
neg eax
sbb al, al
and al, 8
or cl, al
mov eax, dword [esi + 0xc]
neg eax
sbb al, al
and al, 4
or cl, al
cmp dword [esi + 4], 0
setne al
or cl, al
movzx eax, byte [esi + 0x1c]
mov byte [ebp - 0x34], cl
sub esp, 8
mov ecx, dword [esi + 0x24]
mov edx, esp
mov byte [ebp - 0x30], al
movzx eax, byte [esi + 0x20]
mov byte [ebp - 0x2f], al
mov dword [edx], ecx
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10002500
sub ecx, edi
mov dword [edx + 4], ecx
lea ecx, [ebp - 0x34]
call fcn.100021d0
mov ecx, dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
neg ecx
mov edx, dword [esi + 0x38]
sbb cl, cl
and cl, 0x80
neg eax
sbb al, al
and al, 0x40
or cl, al
mov eax, dword [esi + 0x28]
neg eax
sbb al, al
and al, 0x20
or cl, al
movzx eax, byte [ebp - 0x34]
and al, 0x1f
or cl, al
neg edx
mov byte [ebp - 0x34], cl
mov cl, byte [esi + 0x3c]
sbb dl, dl
and dl, 2
cmp dword [esi + 0x34], 0
setne al
and cl, 3
or dl, al
shl cl, 5
movzx eax, byte [ebp - 0x33]
or dl, cl
mov cl, byte [esi + 0x40]
and al, 0x9c
or dl, al
and cl, 7
movzx eax, byte [ebp - 0x32]
shl cl, 2
and al, 0xe3
or cl, al
mov byte [ebp - 0x33], dl
lea eax, [ebp - 0x34]
mov byte [ebp - 0x32], cl
push eax
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x28]
call fcn.10066900
add esp, 4
mov byte [ebp - 4], 1
mov eax, 0x66666667
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x28]
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x100025cf
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x28]
mov dword [eax], 0
call fcn.100032a0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor ecx, ecx
mov edx, 0x94
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
mov dword [ebp + 8], ecx
call fcn.10070062
add esp, 4
mov esi, eax
mov dword [ebp - 0x44], esi
push dword [ebp + 8]
push 0
push esi
call fcn.10072110
xor eax, eax
add esp, 0xc
mov dword [ebp + 8], eax
xor edi, edi
mov ecx, dword [ebp - 0x24]
mov eax, 0x66666667
sub ecx, dword [ebp - 0x28]
imul ecx
mov dword [ebp - 0x40], edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jae 0x10002cc2
mov ecx, dword [ebp - 0x28]
lea edi, [edi + edi*4]
shl edi, 5
cmp dword [ecx + edi + 0x8c], 0
je 0x1000264e
mov eax, dword [ecx + edi]
cmp eax, dword [ecx + edi + 4]
je 0x1000264e
cmp byte [ecx + edi + 0x3e], 0
jne 0x1000264e
mov al, 1
jmp 0x10002650
xor al, al
test al, al
je 0x10002cb9
mov eax, dword [ebp + 8]
imul esi, eax, 0x94
inc eax
mov dword [ebp + 8], eax
movzx eax, byte [ecx + edi + 0x3e]
add esi, dword [ebp - 0x44]
mov dword [esi], eax
mov ecx, dword [ebp - 0x28]
add ecx, 0x20
add ecx, edi
mov dword [ebp - 0x3c], ecx
mov eax, dword [ecx + 0x10]
mov dword [esi + 4], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x1c], eax
test eax, eax
jne 0x1000268e
xor ecx, ecx
jmp 0x100026bb
push eax
call fcn.1007805d
mov ecx, eax
add esp, 4
mov dword [ebp - 0x14], ecx
test ecx, ecx
je 0x100026bb
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x14], 0xf
jbe 0x100026ab
mov eax, dword [eax]
push dword [ebp - 0x1c]
push eax
push ecx
call fcn.10071b80
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov dword [esi + 8], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + edi + 0x8c]
mov dword [esi + 0xc], eax
mov ecx, dword [ebp - 0x28]
add ecx, edi
mov dword [ebp - 0x1c], ecx
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
mov dword [esi + 0x10], eax
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
mov dword [ebp - 0x14], eax
jne 0x100026e9
xor eax, eax
jmp 0x1000270d
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x3c], eax
test eax, eax
je 0x1000270d
mov ecx, dword [ebp - 0x1c]
push dword [ebp - 0x14]
push dword [ecx]
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x3c]
add esp, 0xc
mov dword [esi + 0x14], eax
mov ecx, dword [ebp - 0x28]
add ecx, edi
mov al, byte [ecx + 0x62]
shr al, 2
and al, 7
mov byte [ebp - 0x6c], al
lea eax, [ebp - 0xe8]
push dword [ebp - 0x6c]
push eax
call fcn.100154b0
mov eax, dword [ebp - 0x38]
or eax, 0xc
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x18], eax
test eax, eax
je 0x10002780
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10002780
cmp dword [ebp - 0xd4], 0xf
lea ecx, [ebp - 0xe8]
push dword [ebp - 0x14]
cmova ecx, dword [ebp - 0xe8]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x1c]
add esp, 0xc
mov dword [esi + 0x1c], eax
xorps xmm0, xmm0
mov edx, dword [ebp - 0x28]
add edx, 0x90
mov dword [ebp - 0x90], 0
add edx, edi
mov dword [ebp - 0x8c], 0
mov ecx, edx
movups xmmword [ebp - 0xa0], xmm0
lea eax, [ecx + 1]
mov dword [ebp - 0x14], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100027b4
sub ecx, dword [ebp - 0x14]
push ecx
push edx
lea ecx, [ebp - 0xa0]
call fcn.10003470
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x90]
mov dword [esi + 0x28], eax
test eax, eax
je 0x10002813
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x14], eax
test eax, eax
je 0x10002813
cmp dword [ebp - 0x8c], 0xf
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x90]
cmova ecx, dword [ebp - 0xa0]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [eax + edi + 0x1d]
mov dword [esi + 0x30], eax
lea eax, [ebp - 0x50]
mov ecx, dword [ebp - 0x28]
push eax
lea ecx, [ecx + edi]
call fcn.1000d920
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x4c]
sub eax, dword [ebp - 0x50]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x34], eax
jne 0x10002846
xor eax, eax
jmp 0x10002868
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10002868
push dword [ebp - 0x14]
push dword [ebp - 0x50]
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x1c]
add esp, 0xc
mov dword [esi + 0x38], eax
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx + edi]
call fcn.10015b30
mov dword [esi + 0x3c], eax
mov edx, dword [ebp - 0x28]
add edx, edi
mov eax, dword [edx + 0x44]
mov ecx, dword [edx + 0x40]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x40], ecx
mov ecx, dword [edx + 0x44]
mov dword [esi + 0x44], ecx
mov eax, dword [edx + 0x4c]
mov ecx, dword [edx + 0x48]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x48], ecx
mov ecx, dword [edx + 0x4c]
mov dword [esi + 0x4c], ecx
mov eax, dword [edx + 0x5c]
mov ecx, dword [edx + 0x58]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x50], ecx
mov ecx, dword [edx + 0x5c]
mov dword [esi + 0x54], ecx
mov eax, dword [edx + 0x54]
mov ecx, dword [edx + 0x50]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x58], ecx
mov ecx, dword [edx + 0x54]
mov byte [ebp - 4], 4
mov dword [esi + 0x5c], ecx
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx + edi]
call fcn.1000da50
mov dword [esi + 0x60], eax
mov eax, dword [ebp - 0x28]
push 0
movzx eax, byte [eax + edi + 0x9c]
mov dword [esi + 0x64], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [eax + edi + 0x9d]
mov dword [esi + 0x68], eax
lea eax, [ebp - 0x68]
mov ecx, dword [ebp - 0x28]
add ecx, 0x18
add ecx, edi
push eax
call fcn.1000d310
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x58]
mov dword [esi + 0x6c], eax
test eax, eax
je 0x10002940
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x14], eax
test eax, eax
je 0x10002940
cmp dword [ebp - 0x54], 0xf
lea ecx, [ebp - 0x68]
push dword [ebp - 0x58]
cmova ecx, dword [ebp - 0x68]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov dword [esi + 0x70], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov al, byte [eax + 0x40]
mov byte [ebp - 0x70], al
lea ecx, [ecx + edi]
push dword [ebp - 0x70]
lea eax, [ebp - 0xb8]
push eax
call fcn.100154b0
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x14], eax
mov dword [esi + 0x20], eax
test eax, eax
je 0x100029a9
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x100029a9
cmp dword [ebp - 0xa4], 0xf
lea ecx, [ebp - 0xb8]
push dword [ebp - 0x14]
cmova ecx, dword [ebp - 0xb8]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x1c]
add esp, 0xc
mov dword [esi + 0x24], eax
lea ecx, [ebp - 0xd0]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + edi + 0x70]
mov dword [esi + 0x74], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + edi + 0x6c]
mov dword [esi + 0x78], eax
mov eax, dword [ebp - 0x28]
add eax, 0x74
add eax, edi
push eax
call fcn.10005a50
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xc0]
mov dword [esi + 0x7c], eax
test eax, eax
je 0x10002a1c
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x14], eax
test eax, eax
je 0x10002a1c
cmp dword [ebp - 0xbc], 0xf
lea ecx, [ebp - 0xd0]
push dword [ebp - 0xc0]
cmova ecx, dword [ebp - 0xd0]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov dword [esi + 0x80], eax
xorps xmm0, xmm0
mov eax, dword [ebp - 0x28]
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
movzx eax, byte [eax + edi + 0x9e]
mov dword [esi + 0x84], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + edi + 0x98]
mov dword [esi + 0x88], eax
mov edx, dword [ebp - 0x28]
add edx, 0x94
add edx, edi
mov ecx, edx
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10002a70
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x88]
call fcn.10003470
mov eax, dword [ebp - 0x38]
or eax, 0x73
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x78]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x10002c73
mov edi, dword [ebp - 0x74]
mov dword [esi + 0x90], eax
cmp edi, 0xf
jbe 0x10002add
mov ecx, dword [ebp - 0x88]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x10002ad3
mov ecx, dword [eax - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push edi
push ecx
call fcn.10070054
add esp, 8
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0xbc]
cmp eax, 0xf
jbe 0x10002b1d
mov edx, dword [ebp - 0xd0]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x10002b13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push ecx
push edx
call fcn.10070054
add esp, 8
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0xa4]
cmp ecx, 0xf
jbe 0x10002b5b
mov edx, dword [ebp - 0xb8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10002b51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push ecx
push edx
call fcn.10070054
add esp, 8
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
cmp eax, 0xf
jbe 0x10002bb0
mov edx, dword [ebp - 0x68]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x10002ba6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push ecx
push edx
call fcn.10070054
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x50]
test ecx, ecx
je 0x10002bfd
mov edx, dword [ebp - 0x48]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x10002bde
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push edx
push ecx
call fcn.10070054
add esp, 8
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x8c]
cmp eax, 0xf
jbe 0x10002c3d
mov edx, dword [ebp - 0xa0]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x10002c33
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
push ecx
push edx
call fcn.10070054
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0xd4]
cmp ecx, 0xf
jbe 0x10002cb9
mov edx, dword [ebp - 0xe8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10002caf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002d16
jmp 0x10002caf
push eax
call fcn.1007805d
add esp, 4
mov dword [ebp - 0x14], eax
test eax, eax
je 0x10002aa0
mov edi, dword [ebp - 0x74]
lea ecx, [ebp - 0x88]
push dword [ebp - 0x78]
cmp edi, 0xf
cmova ecx, dword [ebp - 0x88]
push ecx
push eax
call fcn.10071b80
mov eax, dword [ebp - 0x14]
add esp, 0xc
jmp 0x10002aa3
push ecx
push edx
call fcn.10070054
add esp, 8
mov edi, dword [ebp - 0x40]
inc edi
jmp 0x10002605
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
mov dword [ecx], eax
lea ecx, [ebp - 0x28]
call fcn.100032a0
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x44]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push str.Can_not_construct_an_ImageView_from_a_NULL_pointer
lea ecx, [ebp - 0xf4]
call fcn.10002240
push 0x100f2af8
lea eax, [ebp - 0xf4]
push eax
call fcn.10071b0a
call fcn.1007800c
push str.Neither_width_nor_height_of_ImageView_can_be_less_or_equal_to_0
lea ecx, [ebp - 0x100]
call fcn.10002240
push 0x100f2af8
lea eax, [ebp - 0x100]
push eax
call fcn.10071b0a
int3