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

Disassembly:
sub esp, 0x44
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x58]
xor eax, eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x20], eax
mov ecx, dword [edi + 8]
mov edx, dword [edi]
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x100eccb4
cmp dword [edi + 0x78], eax
jne 0x100ecca5
test byte [edx + 0x50], 8
jne 0x100ecca5
mov byte [edi + 0x17], 1
push edi
call fcn.1013a130
add esp, 4
mov dword [esp + 0x18], eax
mov ecx, eax
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x68]
test eax, eax
jns 0x100eccd6
movzx eax, byte [esi + 0x18]
push 0
push eax
push 0x31
push ecx
call fcn.10139b00
add esp, 0x10
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x70]
xor ebx, ebx
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
mov dword [esp + 0x14], ebx
cmp dword [esi + 0x14], ebx
jle 0x100ecef7
mov esi, dword [esp + 0x6c]
test eax, eax
je 0x100ecd02
mov eax, dword [eax + 4]
movzx eax, word [eax + ebx*2]
jmp 0x100ecd05
or eax, 0xffffffff
push eax
push ecx
push edx
push edi
call fcn.100ea1d0
mov edx, dword [esp + 0x78]
add esp, 0x10
mov ebp, eax
test esi, esi
je 0x100ecd21
movzx eax, word [esi + ebx*4]
jmp 0x100ecd25
movzx eax, word [edx + 0x24]
movsx ecx, ax
mov eax, dword [edx]
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x100ecd3e
xor esi, esi
jmp 0x100ecd52
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x100ecd43
sub esi, ecx
and esi, 0x3fffffff
lea eax, [esi + 0x35]
push 0
push eax
push dword [esp + 0x18]
call fcn.10112e00
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x100ecda7
push 0x34
push 0
push ebx
call fcn.1016bd70
or eax, 0xffffffff
mov byte [ebx], 0x3b
mov word [ebx + 0x22], ax
add esp, 0xc
lea eax, [ebx + 0x34]
mov dword [ebx + 8], eax
test esi, esi
je 0x100ecd99
push esi
push dword [esp + 0x20]
push eax
call fcn.1016b7f0
add esp, 0xc
mov eax, dword [ebx + 8]
mov byte [esi + eax], 0
mov dword [ebx + 0x18], 1
push 0
push 0x34
push dword [edi]
call fcn.10112e00
mov esi, eax
add esp, 0xc
test esi, esi
je 0x100ece2e
push 0x34
push 0
push esi
call fcn.1016bd70
or eax, 0xffffffff
mov byte [esi], 0x35
add esp, 0xc
mov word [esi + 0x22], ax
test ebx, ebx
je 0x100ecdea
mov dword [esi + 0x10], ebx
mov eax, dword [ebx + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov ecx, dword [ebx + 0x18]
inc ecx
jmp 0x100ecdef
mov ecx, 1
mov dword [esi + 0x18], ecx
test ebp, ebp
je 0x100ece11
mov dword [esi + 0xc], ebp
mov eax, dword [ebp + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov eax, dword [ebp + 0x18]
cmp eax, ecx
jl 0x100ece11
lea ecx, [eax + 1]
mov dword [esi + 0x18], ecx
mov eax, dword [edi]
mov eax, dword [eax + 0x84]
cmp ecx, eax
jle 0x100ece4c
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.10114f40
add esp, 0xc
jmp 0x100ece4c
test ebp, ebp
je 0x100ece3d
push ebp
push dword [edi]
call fcn.10118890
add esp, 8
test ebx, ebx
je 0x100ece4c
push ebx
push dword [edi]
call fcn.10118890
add esp, 8
mov ebp, dword [esp + 0x58]
mov ebx, dword [edi]
test ebp, ebp
jne 0x100ece5c
mov dword [esp + 0x58], esi
jmp 0x100ececd
test esi, esi
je 0x100ececd
mov eax, dword [ebp + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x100ece7e
mov eax, dword [esi + 4]
and eax, 0x20000001
cmp eax, 0x20000000
jne 0x100ecebc
cmp byte [edi + 0xd4], 2
jae 0x100ecebc
push ebp
push edi
call fcn.10118810
push esi
push edi
call fcn.10118810
push 0
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x10193500
push eax
push 0x9b
push ebx
mov dword [esp + 0x48], 1
call fcn.101155b0
add esp, 0x20
jmp 0x100ecec9
push esi
push ebp
push 0x2c
push edi
call fcn.10125b70
add esp, 0x10
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x68]
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x6c]
inc ebx
mov edx, dword [esp + 0x60]
cmp ebx, dword [eax + 0x14]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14], ebx
jl 0x100eccf5
mov esi, dword [esp + 0x68]
mov ebp, dword [esp + 0x5c]
cmp edx, dword [esi]
jne 0x100ed3ef
cmp dword [esp + 0x74], 0
jle 0x100ed3ef
test byte [edx + 0x1c], 0x80
jne 0x100ed062
push 0
push 0x35
push dword [edi]
call fcn.10112e00
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x100ecf5e
push 0x34
push 0
push ebx
call fcn.1016bd70
add esp, 0xc
mov byte [ebx], 0xb0
or eax, 0xffffffff
mov word [ebx + 0x22], ax
lea eax, [ebx + 0x34]
mov dword [ebx + 8], eax
mov byte [eax], 0
mov eax, dword [esp + 0x70]
mov dword [ebx + 0x18], 1
mov dword [ebx + 0x1c], eax
mov byte [ebx + 1], 0x44
mov eax, dword [ebp + 0x34]
push 0
push 0x35
push dword [esp + 0x18]
mov dword [esp + 0x28], eax
call fcn.10112e00
mov ebp, eax
add esp, 0xc
lea esi, [ebp + 0x18]
mov dword [esp + 0x14], esi
test ebp, ebp
je 0x100ecfbd
push 0x34
push 0
push ebp
call fcn.1016bd70
mov ecx, dword [esp + 0x6c]
lea eax, [ebp + 0x34]
add esp, 0xc
mov dword [ebp + 8], eax
or edx, 0xffffffff
mov byte [ebp], 0xa7
mov word [ebp + 0x22], dx
mov byte [eax], 0
mov eax, dword [esp + 0x1c]
mov dword [esi], 1
mov dword [ebp + 0x2c], ecx
mov dword [ebp + 0x1c], eax
mov word [ebp + 0x20], dx
jmp 0x100ecfc1
mov dword [esp + 0x14], esi
push 0
push 0x34
push dword [edi]
call fcn.10112e00
mov esi, eax
add esp, 0xc
test esi, esi
je 0x100ed02f
push 0x34
push 0
push esi
call fcn.1016bd70
or eax, 0xffffffff
mov byte [esi], 0x34
add esp, 0xc
mov word [esi + 0x22], ax
test ebp, ebp
je 0x100ed007
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x10], ebp
mov eax, dword [ebp + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov ecx, dword [ecx]
inc ecx
jmp 0x100ed00c
mov ecx, 1
mov dword [esi + 0x18], ecx
test ebx, ebx
je 0x100ed358
mov dword [esi + 0xc], ebx
mov eax, dword [ebx + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov eax, dword [ebx + 0x18]
cmp eax, ecx
jmp 0x100ed350
test ebx, ebx
je 0x100ed03e
push ebx
push dword [edi]
call fcn.10118890
add esp, 8
test ebp, ebp
je 0x100ed04d
push ebp
push dword [edi]
call fcn.10118890
add esp, 8
mov ebp, dword [esp + 0x58]
mov ebx, dword [edi]
test ebp, ebp
jne 0x100ed37c
mov ebp, esi
jmp 0x100ed3f3
xor ecx, ecx
xor esi, esi
xor ebp, ebp
mov dword [esp + 0x1c], ecx
cmp si, word [eax + 0x32]
jae 0x100ed300
mov eax, dword [eax + 4]
movzx esi, word [eax + ecx*2]
push esi
push dword [esp + 0x74]
push edx
push edi
call fcn.100ea1d0
mov ecx, dword [esp + 0x70]
add esp, 0x10
movsx edx, si
add edx, edx
mov dword [esp + 0x14], eax
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + edx*8]
mov dword [esp + 0x24], eax
test eax, eax
jne 0x100ed0ab
xor esi, esi
jmp 0x100ed0bf
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x100ed0b0
sub esi, ecx
and esi, 0x3fffffff
lea eax, [esi + 0x35]
push 0
push eax
push dword [esp + 0x18]
call fcn.10112e00
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x100ed114
push 0x34
push 0
push ebx
call fcn.1016bd70
or eax, 0xffffffff
mov byte [ebx], 0x3b
mov word [ebx + 0x22], ax
add esp, 0xc
lea eax, [ebx + 0x34]
mov dword [ebx + 8], eax
test esi, esi
je 0x100ed106
push esi
push dword [esp + 0x28]
push eax
call fcn.1016b7f0
add esp, 0xc
mov eax, dword [ebx + 8]
mov byte [esi + eax], 0
mov dword [ebx + 0x18], 1
push 0
push 0x34
push dword [edi]
call fcn.10112e00
mov esi, eax
add esp, 0xc
test esi, esi
je 0x100ed19f
push 0x34
push 0
push esi
call fcn.1016bd70
or eax, 0xffffffff
mov byte [esi], 0x2d
add esp, 0xc
mov word [esi + 0x22], ax
test ebx, ebx
je 0x100ed157
mov dword [esi + 0x10], ebx
mov eax, dword [ebx + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov ecx, dword [ebx + 0x18]
inc ecx
jmp 0x100ed15c
mov ecx, 1
mov ebx, dword [esp + 0x14]
mov dword [esi + 0x18], ecx
test ebx, ebx
je 0x100ed182
mov dword [esi + 0xc], ebx
mov eax, dword [ebx + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov eax, dword [ebx + 0x18]
cmp eax, ecx
jl 0x100ed182
lea ecx, [eax + 1]
mov dword [esi + 0x18], ecx
mov eax, dword [edi]
mov eax, dword [eax + 0x84]
cmp ecx, eax
jle 0x100ed1c1
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.10114f40
add esp, 0xc
jmp 0x100ed1c1
mov eax, dword [esp + 0x14]
test eax, eax
je 0x100ed1b2
push eax
push dword [edi]
call fcn.10118890
add esp, 8
test ebx, ebx
je 0x100ed1c1
push ebx
push dword [edi]
call fcn.10118890
add esp, 8
mov ebx, dword [edi]
test ebp, ebp
jne 0x100ed1ce
mov ebp, esi
jmp 0x100ed2df
test esi, esi
je 0x100ed2df
mov eax, dword [ebp + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x100ed201
mov eax, dword [esi + 4]
lea ecx, [esi + 4]
and eax, 0x20000001
mov dword [esp + 0x14], ecx
cmp eax, 0x20000000
jne 0x100ed24b
mov dword [esp + 0x14], ecx
jmp 0x100ed208
lea eax, [esi + 4]
mov dword [esp + 0x14], eax
cmp byte [edi + 0xd4], 2
jae 0x100ed24b
push ebp
push edi
call fcn.10118810
push esi
push edi
call fcn.10118810
push 0
lea eax, [esp + 0x40]
mov dword [esp + 0x40], 0x10193500
push eax
push 0x9b
push ebx
mov dword [esp + 0x50], 1
call fcn.101155b0
add esp, 0x20
mov ebp, eax
jmp 0x100ed2df
push 0
push 0x34
push ebx
call fcn.10112e00
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x100ed2ca
push 0x34
push 0
push ebx
call fcn.1016bd70
mov edx, dword [esp + 0x20]
or eax, 0xffffffff
mov word [ebx + 0x22], ax
add esp, 0xc
mov byte [ebx], 0x2c
mov dword [ebx + 0x10], esi
mov edx, dword [edx]
and edx, 0x400208
or edx, dword [ebx + 4]
mov dword [ebx + 4], edx
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0xc], ebp
mov eax, dword [ebp + 4]
and eax, 0x400208
or eax, edx
mov dword [ebx + 4], eax
mov eax, dword [ebp + 0x18]
cmp eax, ecx
jl 0x100ed2ac
inc eax
mov dword [ebx + 0x18], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x84]
cmp dword [ebx + 0x18], eax
jle 0x100ed2dd
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.10114f40
add esp, 0xc
jmp 0x100ed2dd
push ebp
push dword [edi]
call fcn.10118890
push esi
push dword [edi]
call fcn.10118890
add esp, 0x10
mov ebp, ebx
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x60]
inc ecx
mov dword [esp + 0x1c], ecx
movzx eax, word [eax + 0x32]
cmp ecx, eax
mov eax, dword [esp + 0x64]
jl 0x100ed076
push 0
push 0x34
push dword [edi]
call fcn.10112e00
mov esi, eax
add esp, 0xc
test esi, esi
je 0x100ed03e
push 0x34
push 0
push esi
call fcn.1016bd70
or eax, 0xffffffff
mov byte [esi], 0x13
add esp, 0xc
mov word [esi + 0x22], ax
mov dword [esi + 0x18], 1
lea ecx, [eax + 2]
test ebp, ebp
je 0x100ed358
mov dword [esi + 0xc], ebp
mov eax, dword [ebp + 4]
and eax, 0x400208
or dword [esi + 4], eax
mov eax, dword [ebp + 0x18]
cmp eax, ecx
jl 0x100ed358
lea ecx, [eax + 1]
mov dword [esi + 0x18], ecx
mov eax, dword [edi]
mov eax, dword [eax + 0x84]
cmp ecx, eax
jle 0x100ed04d
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push edi
call fcn.10114f40
add esp, 0xc
jmp 0x100ed04d
test esi, esi
je 0x100ed3f3
mov eax, dword [ebp + 4]
and eax, 0x20000001
cmp eax, 0x20000000
je 0x100ed39e
mov eax, dword [esi + 4]
and eax, 0x20000001
cmp eax, 0x20000000
jne 0x100ed3de
cmp byte [edi + 0xd4], 2
jae 0x100ed3de
push ebp
push edi
call fcn.10118810
push esi
push edi
call fcn.10118810
push 0
lea eax, [esp + 0x40]
mov dword [esp + 0x40], 0x10193500
push eax
push 0x9b
push ebx
mov dword [esp + 0x50], 1
call fcn.101155b0
add esp, 0x20
mov ebp, eax
jmp 0x100ed3f3
push esi
push ebp
push 0x2c
push edi
call fcn.10125b70
add esp, 0x10
mov ebp, eax
jmp 0x100ed3f3
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
lea eax, [esp + 0x34]
xorps xmm0, xmm0
mov dword [esp + 0x38], esi
push ebp
push eax
movlpd qword [esp + 0x44], xmm0
movlpd qword [esp + 0x4c], xmm0
movlpd qword [esp + 0x54], xmm0
mov dword [esp + 0x3c], edi
call fcn.1012eca0
add esp, 8
cmp dword [edi + 0x24], 0
jne 0x100ed4af
push 0
push 0
push 0
push 0
push 0
push ebp
push esi
push edi
call fcn.10149630
mov ebx, dword [esp + 0x38]
mov esi, eax
mov eax, dword [esp + 0x88]
add esp, 0x20
mov ecx, dword [ebx + 0x6c]
movzx edx, byte [eax + 0x18]
cmp dword [ebx + 0x70], ecx
jg 0x100ed471
push 0
push dword [esp + 0x78]
push edx
push 0x9e
push ebx
call fcn.100f0a80
add esp, 0x14
jmp 0x100ed4a0
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x74]
mov dword [eax + ecx*4], 0x9e
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
test esi, esi
je 0x100ed4b3
push esi
call fcn.1014cad0
add esp, 4
jmp 0x100ed4b3
mov ebx, dword [esp + 0x18]
test ebp, ebp
je 0x100ed4c4
push ebp
push dword [esp + 0x14]
call fcn.10118890
add esp, 8
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x100ed506
mov edx, dword [ebx + 0x6c]
lea eax, [edx - 1]
cmp ecx, eax
jne 0x100ed4e1
pop edi
pop esi
pop ebp
mov dword [ebx + 0x6c], eax
pop ebx
add esp, 0x44
ret
mov eax, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x100ed4f9
pop edi
mov eax, 0x101a3d48
pop esi
pop ebp
pop ebx
mov dword [eax + 8], edx
add esp, 0x44
ret
mov eax, dword [ebx + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret