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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
mov esi, eax
mov edx, dword [esi + 0x1c]
mov eax, dword [esp + 0x70]
mov ecx, dword [esi + 0x14]
mov ebx, dword [esi + 0xc]
mov ebp, dword [esi + 0x18]
mov dword [esp + 0x28], edx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x44], ecx
xor ecx, ecx
push edi
mov edi, dword [esi + 0x10]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x68], edi
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x40], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x1c], edx
cmp eax, ecx
je 0x100f172e
cmp dword [eax], 1
jne 0x100f172e
mov eax, dword [esp + 0x74]
push eax
call fcn.100e8d10
add esp, 4
mov dword [esp + 0x38], eax
test ebp, ebp
je 0x100f0ed8
mov ecx, dword [esp + 0x1c]
push ebp
push ecx
call fcn.100ea4e0
add esp, 8
mov dword [esp + 0x40], eax
test eax, eax
jne 0x100f0ed8
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
call fcn.100ea8d0
push 0x13
jmp 0x100f1730
lea eax, [ebx - 1]
mov dword [esp + 0x24], 0x100e9de0
cmp eax, 0xc
ja case.default.0x100f0eec
jmp dword [eax*4 + 0x100f1748]
xor ebx, ebx
mov eax, fcn.100eba60
jmp 0x100f0fb6
xor ebx, ebx
mov eax, 0x100ebba0
jmp 0x100f0fb6
mov eax, 0x100ebdf0
jmp 0x100f0fa8
xor ebx, ebx
cmp dword [esi + 0x28], 1
mov dword [esp + 0x7c], ebx
jne 0x100f0f29
mov dword [esp + 0x54], 0x100eb800
cmp edi, 5
je 0x100f0f33
cmp edi, 3
jne 0x100f0f3e
mov eax, 0x100eb720
cmp dword [esp + 0x48], ebx
je 0x100f0f43
mov eax, 0x100eb6b0
mov dword [esp + 0x24], 0x100e9fc0
jmp 0x100f0fba
xor ebx, ebx
mov dword [esp + 0x7c], ebx
mov eax, 0x100eb8d0
jmp 0x100f0fba
xor ebx, ebx
mov dword [esp + 0x7c], ebx
mov eax, 0x100eb970
jmp 0x100f0fba
xor ebx, ebx
mov dword [esp + 0x7c], ebx
mov eax, 0x100ebc60
jmp 0x100f0fba
xor ebx, ebx
mov dword [esp + 0x7c], ebx
mov eax, 0x100ebbd0
jmp 0x100f0fba
mov eax, 0x100ebd30
jmp 0x100f0fa8
xor ebx, ebx
mov eax, 0x100eb9b0
jmp 0x100f0fb6
xor ebx, ebx
mov eax, 0x100ebcb0
jmp 0x100f0fb6
xor ebx, ebx
mov eax, fcn.100ebc10
jmp 0x100f0fb6
mov eax, 0x100eb690
xor ebx, ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x24], 0x100e9fc0
mov dword [esp + 0x78], ebx
mov dword [esp + 0x20], eax
cmp eax, ebx
jne 0x100f0fd9
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
call fcn.100ea8d0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x60
ret
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 4]
mov dword [esp + 0x64], eax
cmp eax, ebx
je 0x100f16fe
cmp dword [eax], ebx
jle 0x100f16fe
mov esi, dword [esi + 8]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x18], ebx
cmp esi, 0xffffffff
je 0x100f105c
mov eax, dword [esp + 0x74]
imul esi, esi, 0x2c
mov ecx, dword [eax + 0x20]
mov ebp, dword [ecx + 8]
lea edx, [esp + 0x14]
add esi, ebp
mov ebx, esi
push edx
push eax
mov ecx, ebx
mov dword [esp + 0x38], ebx
call fcn.100ecc90
add esp, 8
test eax, eax
je 0x100f105c
mov eax, dword [ebx + 4]
cmp eax, 0xffffffff
je 0x100f104e
imul eax, eax, 0x2c
add eax, ebp
mov ebx, eax
mov dword [esp + 0x60], 1
jmp 0x100f1058
xor ebx, ebx
mov dword [esp + 0x18], 1
mov dword [esp + 0x30], ebx
cmp dword [esp + 0x80], 0
je 0x100f106f
test ebx, ebx
jne 0x100f106f
lea edi, [ebx + 1]
jmp 0x100f1071
xor edi, edi
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 4]
xor ebp, ebp
mov dword [esp + 0x50], edi
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x58], ebp
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x44], ebp
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x64]
cmp eax, dword [esi]
mov ecx, dword [esp + 0x3c]
jl 0x100f10aa
test ecx, ecx
je 0x100f1662
mov edx, dword [esp + 0x54]
test edx, edx
je 0x100f10e6
test ecx, ecx
jne 0x100f10ca
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + eax*4]
inc eax
push ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x48], eax
push 0
jmp 0x100f10d0
mov eax, dword [esp + 0x58]
push eax
push ecx
call edx
add esp, 8
mov dword [esp + 0x3c], eax
test eax, eax
je 0x100f1092
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 4], eax
jmp 0x100f10f8
mov edx, dword [esi + 8]
mov ecx, dword [edx + eax*4]
mov edx, dword [esp + 0x1c]
inc eax
mov dword [edx + 4], ecx
mov dword [esp + 0x44], eax
test ebp, ebp
jne 0x100f111b
push 0xc
call dword [0x1043801c]
add esp, 4
test eax, eax
je 0x100f1603
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ebp, eax
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x34], esi
mov eax, dword [esp + 0x74]
push esi
push eax
call dword [esp + 0x28]
mov esi, eax
add esp, 8
test esi, esi
je 0x100f1507
mov eax, dword [esp + 0x78]
test eax, eax
je 0x100f1175
mov ecx, dword [eax]
test ecx, ecx
je 0x100f1175
cmp ecx, esi
je 0x100f1507
mov edx, dword [esp + 0x28]
and edx, 0x800000ff
jns 0x100f1164
dec edx
or edx, 0xffffff00
inc edx
jne 0x100f1175
mov edx, esi
call fcn.100e9310
test eax, eax
jge 0x100f1507
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x100f11ae
mov edx, dword [eax]
test edx, edx
je 0x100f11ae
cmp edx, esi
je 0x100f1507
mov eax, dword [esp + 0x28]
and eax, 0x800000ff
jns 0x100f119d
dec eax
or eax, 0xffffff00
inc eax
jne 0x100f11ae
mov ecx, esi
call fcn.100e9310
test eax, eax
jge 0x100f1507
mov eax, dword [esp + 0x68]
mov ecx, 1
add dword [esp + 0x28], ecx
cmp eax, 5
ja case.0x100f11e6.5
jmp dword [eax*4 + 0x100f177c]
cmp dword [esp + 0x48], 0
mov eax, dword [esi + 4]
jne 0x100f1221
dec eax
cmp eax, 0x14
ja case.0x100f11e6.5
movzx ecx, byte [eax + 0x100f179c]
jmp dword [ecx*4 + 0x100f1794]
cmp dword [esp + 0x18], 0
jne 0x100f128d
push esi
push ebp
call fcn.100e9ba0
add esp, 8
test edi, edi
je case.0x100f11e6.5
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x100f1649
mov dword [esp + 0x10], ebp
xor ebp, ebp
jmp 0x100f1662
mov ecx, dword [esp + 0x48]
cmp eax, ecx
jne 0x100f1270
cmp ecx, 0x12
jne 0x100f1282
cmp dword [esp + 0x18], 0
je 0x100f1254
inc ebx
cmp ebx, dword [esp + 0x14]
jne case.0x100f11e6.5
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 4]
push esi
push ecx
push ebp
call fcn.100e99b0
add esp, 0xc
jmp 0x100f12a2
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 4]
push esi
push eax
push ebp
mov dword [esp + 0x40], 1
call fcn.100e99b0
add esp, 0xc
jmp 0x100f1202
cmp ecx, 3
jne case.0x100f11e6.5
cmp eax, 4
jne case.0x100f11e6.5
cmp dword [esp + 0x18], 0
je 0x100f11f8
inc ebx
cmp ebx, dword [esp + 0x14]
jne case.0x100f11e6.5
push esi
push ebp
call fcn.100e9ba0
add esp, 8
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x100f14e5
mov dword [esp + 0x10], ebp
xor ebp, ebp
jmp 0x100f14f4
cmp dword [esi + 4], 7
jne case.0x100f11e6.5
cmp dword [esp + 0x2c], 0
je 0x100f1282
mov ecx, dword [esi + 8]
mov edx, dword [esp + 0x2c]
jmp 0x100f14ce
mov eax, dword [esp + 0x5c]
cmp eax, 3
jne 0x100f12f8
cmp dword [esi + 4], 2
jne case.0x100f11e6.5
cmp dword [esp + 0x18], 0
je 0x100f11f8
add ebx, ecx
jmp 0x100f128e
cmp eax, 9
jne 0x100f134c
cmp dword [esi + 4], 0x12
jne case.0x100f11e6.5
cmp dword [esp + 0x18], 0
je 0x100f1331
add ebx, ecx
cmp ebx, dword [esp + 0x14]
jne case.0x100f11e6.5
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 4]
push esi
push eax
push ebp
call fcn.100e99b0
add esp, 0xc
jmp 0x100f12a2
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x34], ecx
mov ecx, dword [eax + 4]
push esi
push ecx
push ebp
call fcn.100e99b0
add esp, 0xc
jmp 0x100f1202
cmp dword [esi + 4], ecx
jne case.0x100f11e6.5
cmp dword [esp + 0x4c], 0
jne 0x100f136e
cmp dword [esp + 0x18], 0
je 0x100f11f8
add ebx, ecx
jmp 0x100f128e
mov eax, dword [esi + 0x24]
test eax, eax
je case.0x100f11e6.5
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x40]
push edx
push eax
jmp 0x100f14d0
call fcn.100d2a40
mov edi, eax
call fcn.100d2a80
mov ecx, dword [eax]
mov edx, dword [edi]
push 0x3006
push str...xpath.c
push str.Unimplemented_block_at__s:_d_n
push ecx
call edx
mov edi, dword [esp + 0x60]
add esp, 0x10
jmp case.0x100f11e6.5
mov eax, dword [esp + 0x5c]
cmp eax, 3
jne 0x100f13c6
mov eax, dword [esi + 4]
cmp eax, 2
jmp 0x100f13d6
cmp eax, 9
mov eax, dword [esi + 4]
jne 0x100f13d3
cmp eax, 0x12
jmp 0x100f13d6
cmp eax, 1
jne case.0x100f11e6.5
sub eax, 1
je 0x100f1493
sub eax, 1
je 0x100f144c
sub eax, 0x10
jne case.0x100f11e6.5
mov eax, dword [esi + 0xc]
test eax, eax
je case.0x100f11e6.5
cmp dword [esp + 0x2c], 0
je case.0x100f11e6.5
mov ecx, dword [esp + 0x2c]
push ecx
push eax
call fcn.100d1e20
add esp, 8
test eax, eax
je case.0x100f11e6.5
cmp dword [esp + 0x18], 0
je 0x100f1254
inc ebx
cmp ebx, dword [esp + 0x14]
jne case.0x100f11e6.5
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 4]
push esi
push edx
push ebp
call fcn.100e99b0
add esp, 0xc
jmp 0x100f12a2
mov ecx, dword [esi + 8]
mov edx, dword [esp + 0x2c]
push ecx
push edx
call fcn.100d1e20
add esp, 8
test eax, eax
je case.0x100f11e6.5
cmp dword [esp + 0x4c], 0
mov eax, dword [esi + 0x24]
jne 0x100f1480
test eax, eax
je 0x100f1282
cmp dword [eax + 0xc], 0
jmp 0x100f127c
test eax, eax
je case.0x100f11e6.5
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x40]
push eax
push ecx
jmp 0x100f14d0
mov edx, dword [esi + 8]
mov eax, dword [esp + 0x2c]
push edx
push eax
call fcn.100d1e20
add esp, 8
test eax, eax
je case.0x100f11e6.5
cmp dword [esp + 0x4c], 0
jne 0x100f14bc
cmp dword [esi + 0x24], 0
jmp 0x100f127c
mov eax, dword [esi + 0x24]
test eax, eax
je case.0x100f11e6.5
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x40]
push ecx
push edx
call fcn.100d1e20
add esp, 8
test eax, eax
je case.0x100f11e6.5
jmp 0x100f1282
push 0
push ebp
push eax
call dword [esp + 0x30]
add esp, 0xc
mov dword [esp + 0x10], eax
cmp dword [esp + 0x80], 0
je 0x100f1092
jmp 0x100f1662
cmp dword [esp + 0x30], 0
je 0x100f15cf
mov esi, dword [ebp]
test esi, esi
jle 0x100f1092
cmp dword [esp + 0x60], 0
mov ecx, dword [esp + 0x74]
je 0x100f1544
mov eax, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x18]
push eax
push eax
mov eax, dword [esp + 0x3c]
push esi
push ebp
push ecx
call fcn.100f0ba0
add esp, 0x18
jmp 0x100f1559
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
push edx
push esi
push ebp
push eax
push ecx
call fcn.100f09c0
add esp, 0x14
mov edx, dword [esp + 0x74]
cmp dword [edx + 8], 0
jne 0x100f165a
test eax, eax
jne 0x100f1583
mov eax, dword [esp + 0x34]
push eax
mov edi, ebp
call fcn.100ea160
mov edi, dword [esp + 0x54]
add esp, 4
jmp 0x100f1092
cmp dword [ebp], 0
jle 0x100f1092
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x100f15a7
cmp esi, eax
je 0x100f159f
push 1
push ebp
push ecx
jmp 0x100f15b1
mov dword [esp + 0x10], ebp
xor ebp, ebp
jmp 0x100f15bc
xor edx, edx
cmp esi, eax
setne dl
push edx
push ebp
push ecx
call dword [esp + 0x30]
mov dword [esp + 0x1c], eax
add esp, 0xc
cmp dword [esp + 0x80], 0
je 0x100f1092
jmp 0x100f1662
cmp dword [ebp], 0
jle 0x100f1092
cmp dword [esp + 0x10], 0
jne 0x100f15eb
mov dword [esp + 0x10], ebp
xor ebp, ebp
jmp 0x100f1092
mov eax, dword [esp + 0x10]
push 0
push ebp
push eax
call dword [esp + 0x30]
add esp, 0xc
mov dword [esp + 0x10], eax
jmp 0x100f1092
push str.creating_nodeset_n
xor esi, esi
call fcn.100e7e70
add esp, 4
xor ebp, ebp
mov dword [esp + 0x28], esi
jmp 0x100f1662
mov dword [esp + 0x28], 0
call fcn.100d2a40
mov esi, eax
call fcn.100d2a80
mov ecx, dword [eax]
mov edx, dword [esi]
push 0x2fbf
push str...xpath.c
push str.Internal_error_at__s:_d_n
push ecx
call edx
add esp, 0x10
jmp 0x100f1662
push 0
push ebp
push eax
call dword [esp + 0x30]
add esp, 0xc
mov dword [esp + 0x10], eax
jmp 0x100f1662
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x38]
xor edx, edx
cmp dword [eax + 8], edx
je 0x100f168f
cmp dword [eax + 0x1c], edx
je 0x100f168f
mov ecx, dword [esp + 0x74]
mov esi, dword [ecx + 0x10]
mov dword [esi + 8], 1
mov ecx, dword [ecx + 0x10]
mov esi, dword [eax + 0x1c]
mov dword [ecx + 0x1c], esi
mov dword [eax + 0x1c], edx
mov dword [eax + 8], edx
mov ebx, eax
mov eax, dword [esp + 0x1c]
call fcn.100ea8d0
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x100f16bd
test ebp, ebp
je 0x100f16af
cmp dword [ebp], eax
jne 0x100f16af
mov eax, ebp
jmp 0x100f16b9
push 0
call fcn.100e9860
add esp, 4
mov dword [esp + 0x10], eax
test ebp, ebp
je 0x100f16ce
cmp ebp, eax
je 0x100f16ce
push ebp
call fcn.100ea100
add esp, 4
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
mov eax, esi
call fcn.100ed190
mov edx, dword [esp + 0x74]
push eax
push edx
call fcn.100e8d60
mov eax, dword [esp + 0x74]
add esp, 8
pop edi
mov dword [esi + 4], eax
mov eax, dword [esp + 0x24]
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x38]
mov eax, esi
call fcn.100ea8d0
xor edi, edi
mov eax, esi
call fcn.100ed190
mov ecx, dword [esp + 0x74]
push eax
push ecx
call fcn.100e8d60
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x60
ret
push 0xb
mov edx, dword [esp + 0x78]
push edx
call fcn.100e7fb0
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x60
ret