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

Disassembly:
push 0xffffffffffffffff
push 0x10192355
mov eax, dword fs:[0]
push eax
sub esp, 0xec
mov eax, dword [0x1026d48c]
xor eax, esp
mov dword [esp + 0xe8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1026d48c]
xor eax, esp
push eax
lea eax, [esp + 0x100]
mov dword fs:[0], eax
mov esi, dword [esp + 0x118]
test esi, esi
mov ebp, dword [esp + 0x120]
mov eax, dword [esp + 0x124]
mov edi, ecx
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], eax
mov byte [edi + 0x82], 0
je 0x100297c9
mov ebx, dword [esp + 0x11c]
test ebx, ebx
je 0x100297c9
cmp ebx, 6
jbe 0x10029733
push 6
push str._PDF_1
push esi
call fcn.10016f30
add esp, 0xc
test eax, eax
jne 0x10029733
push ebx
push esi
mov ecx, ebp
call fcn.10019380
jmp 0x100297cb
mov ebx, dword [esp + 0x1c]
movzx ecx, byte [ebx + 0x12e]
push ecx
push str.EncConvert
push ebx
lea ecx, [esp + 0x34]
call fcn.10061660
cmp byte [ebx + 0x12e], 0
mov ebp, dword [esp + 0x114]
mov ebx, dword [esp + 0x110]
mov dword [esp + 0x108], 0
je 0x1002978e
mov ecx, dword [esp + 0x1c]
push ebx
push str.fromCodePage
call fcn.100612a0
mov ecx, dword [esp + 0x1c]
push ebp
push str.toCodePage
call fcn.100612a0
test ebp, ebp
jne 0x1002979b
mov ebp, ebx
mov dword [esp + 0x114], ebp
test ebx, ebx
je 0x100297a3
cmp ebx, ebp
jne 0x100297f5
mov edx, dword [esp + 0x11c]
mov ecx, dword [esp + 0x20]
push edx
push esi
call fcn.10019380
lea ecx, [esp + 0x28]
mov dword [esp + 0x108], 0xffffffff
call fcn.100616a0
mov al, 1
mov ecx, dword [esp + 0x100]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xe8]
xor ecx, esp
call fcn.1018f87e
add esp, 0xf8
ret 0x18
cmp ebx, 0x25
je 0x100297ff
cmp ebx, 0x64
jl 0x1002984d
cmp ebp, 0x25
je 0x10029809
cmp ebp, 0x64
jl 0x1002984d
lea ecx, [esp + 0x50]
call fcn.100182e0
cmp ebx, 0x2714
mov byte [esp + 0x108], 1
jne 0x10029ae0
mov edi, dword [esp + 0x11c]
push edi
push esi
lea ecx, [esp + 0x58]
call fcn.10019380
test al, al
lea ecx, [esp + 0x50]
jne 0x10029868
mov byte [esp + 0x108], 0
call fcn.10018a90
lea ecx, [esp + 0x28]
mov dword [esp + 0x108], 0xffffffff
call fcn.100616a0
xor al, al
jmp 0x100297cb
call fcn.1008bea0
mov ebx, eax
xor ebp, ebp
cmp ebx, ebp
je 0x10029a66
lea ecx, [esp + 0x88]
mov byte [esp + 0x17], 0
mov dword [esp + 0x18], ebp
call fcn.10010fb0
cmp edi, ebp
mov byte [esp + 0x108], 2
jbe 0x100299c1
mov edi, edi
cmp byte [esp + 0x17], 0
mov al, byte [ebx + ebp]
jne 0x100298ca
cmp al, 0x20
jb 0x10029934
movzx eax, al
cmp dword [eax*4 + 0x1025e968], 0
je 0x10029934
mov byte [esp + 0x17], 1
mov dword [esp + 0x18], ebp
jmp 0x10029934
cmp al, 0x20
jb 0x100298db
movzx ecx, al
cmp dword [ecx*4 + 0x1025e968], 0
jne 0x10029934
mov esi, ebp
sub esi, dword [esp + 0x18]
cmp esi, 1
jle 0x1002992f
lea ecx, [esp + 0x88]
call fcn.10010660
mov edx, dword [esp + 0x18]
lea edi, [edx + ebx]
push esi
push edi
lea ecx, [esp + 0x90]
call fcn.10010df0
lea ecx, [esp + 0x88]
add esi, 0xffffffff
call fcn.1008be90
test esi, esi
jl 0x1002992f
mov ecx, edi
lea esp, [esp]
mov dl, byte [eax + esi]
mov byte [ecx], dl
sub esi, 1
add ecx, 1
test esi, esi
jge 0x10029920
mov byte [esp + 0x17], 0
mov al, byte [ebx + ebp]
cmp al, 0xb0
jb 0x1002993f
cmp al, 0xb9
jbe 0x10029957
cmp al, 0xa0
jb 0x10029a6f
cmp al, 0xaf
ja 0x10029a6f
cmp al, 0xac
je 0x1002995c
cmp al, 0xa5
je 0x1002995c
add al, 0x80
mov byte [ebx + ebp], al
add ebp, 1
cmp ebp, dword [esp + 0x11c]
jb 0x100298a0
cmp byte [esp + 0x17], 0
je 0x100299c1
sub ebp, dword [esp + 0x18]
cmp ebp, 1
jle 0x100299c1
lea ecx, [esp + 0x88]
call fcn.10010660
mov eax, dword [esp + 0x18]
lea edi, [eax + ebx]
push ebp
push edi
lea ecx, [esp + 0x90]
call fcn.10010df0
lea ecx, [esp + 0x88]
lea esi, [ebp - 1]
call fcn.1008be90
test esi, esi
jl 0x100299c1
mov ecx, edi
mov dl, byte [eax + esi]
mov byte [ecx], dl
sub esi, 1
add ecx, 1
test esi, esi
jge 0x100299b2
lea ecx, [esp + 0x50]
call fcn.1008bea0
lea ecx, [esp + 0x88]
mov esi, eax
mov byte [esp + 0x108], 1
call fcn.10011070
mov ebp, dword [esp + 0x114]
mov ebx, dword [esp + 0x110]
mov edi, dword [esp + 0x24]
cmp ebp, 0xfde8
mov byte [edi + 0x81], 0
mov dword [edi + 0x78], ebx
mov dword [edi + 0x7c], ebp
jne 0x10029cc4
lea ecx, [esp + 0x34]
call fcn.100182e0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x11c]
push ecx
lea edx, [esp + 0x38]
push edx
push eax
push esi
mov byte [esp + 0x118], 7
call fcn.100eee40
neg al
mov ecx, edi
sbb eax, eax
add eax, 0x4b1
push eax
push ebx
call fcn.100289d0
test al, al
jne 0x10029c9a
lea ecx, [esp + 0x34]
mov byte [edi + 0x82], 1
mov byte [esp + 0x108], 1
call fcn.10018a90
lea ecx, [esp + 0x50]
jmp 0x10029840
cmp al, 0xba
je 0x10029957
cmp al, 0xbc
je 0x10029957
cmp al, 0xbd
je 0x10029957
cmp al, 0xbe
je 0x10029957
cmp al, 0xdb
je 0x10029957
cmp al, 0xdc
je 0x10029957
cmp al, 0xdd
je 0x10029957
cmp al, 0xde
je 0x10029957
cmp al, 0xdf
je 0x10029957
cmp al, 0xfb
je 0x10029957
cmp al, 0xfc
je 0x10029957
cmp al, 0xfd
je 0x10029957
cmp al, 0x81
jne 0x1002995c
mov byte [ebx + ebp], 0xa0
jmp 0x1002995c
lea eax, [ebx - 0xc42c]
cmp eax, 2
ja 0x10029be9
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + 0x12e], 0
je 0x10029b08
mov edx, dword [ecx]
mov eax, dword [edx + 0x18]
push str.Converting_from_iso_2022_
call eax
lea ecx, [esp + 0x18]
call fcn.100796f0
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 3
call fcn.100182e0
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x11c]
push edi
lea ecx, [esp + 0x38]
push ecx
push edx
push esi
lea ecx, [esp + 0x28]
mov byte [esp + 0x118], 4
call fcn.1007a150
lea ecx, [esp + 0x34]
mov bl, 1
call fcn.100f6330
test eax, eax
je 0x10029b9b
mov esi, dword [esp + 0x114]
cmp esi, 0x3a4
lea ecx, [esp + 0x34]
je 0x10029b8f
mov eax, dword [esp + 0x20]
push edi
push eax
call fcn.100f6330
push eax
lea ecx, [esp + 0x40]
call fcn.1008bea0
mov ecx, dword [esp + 0x30]
push eax
push esi
push 0x3a4
call fcn.10029690
jmp 0x10029b99
push ecx
mov ecx, dword [esp + 0x24]
call fcn.1001b160
mov bl, al
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 3
call fcn.10018a90
lea ecx, [esp + 0x18]
mov byte [esp + 0x108], 1
call fcn.10079700
lea ecx, [esp + 0x50]
mov byte [esp + 0x108], 0
call fcn.10018a90
lea ecx, [esp + 0x28]
mov dword [esp + 0x108], 0xffffffff
call fcn.100616a0
mov al, bl
jmp 0x100297cb
cmp ebx, 0xc431
jne 0x100299f2
lea ecx, [esp + 0x18]
call fcn.100793d0
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 5
call fcn.100182e0
mov eax, dword [esp + 0x11c]
lea edx, [esp + 0x34]
push edx
push eax
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x114], 6
call fcn.100793f0
lea ecx, [esp + 0x34]
mov bl, 1
call fcn.100f6330
test eax, eax
je 0x10029c73
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push ecx
push edx
lea ecx, [esp + 0x3c]
call fcn.100f6330
push eax
lea ecx, [esp + 0x40]
call fcn.1008bea0
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x124]
push eax
push 0x3b5
call fcn.10029690
mov bl, al
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 5
call fcn.10018a90
lea ecx, [esp + 0x18]
mov byte [esp + 0x108], 1
call fcn.100793e0
jmp 0x10029bbd
mov ecx, dword [esp + 0x20]
push ecx
lea edx, [esp + 0x38]
push edx
call fcn.10078f00
add esp, 8
lea ecx, [esp + 0x34]
mov bl, al
mov byte [esp + 0x108], 1
call fcn.10018a90
jmp 0x10029bbd
cmp ebp, 0x2ee0
je 0x10029f89
cmp ebp, 0x2ee1
je 0x10029f89
cmp ebp, 0xfded
je 0x10029f89
cmp ebp, 0xfdee
je 0x10029f89
cmp ebp, 0x4b1
jne 0x10029de8
lea ecx, [esp + 0x34]
mov dword [edi + 0x7c], 0x4b0
call fcn.100182e0
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x11c]
push eax
lea ecx, [esp + 0x38]
push ecx
push edx
push esi
push 0x4b0
push ebx
mov ecx, edi
mov byte [esp + 0x120], 0xa
call fcn.100289d0
test al, al
jne 0x10029d43
mov byte [edi + 0x82], 1
lea ecx, [esp + 0x34]
call fcn.100f6330
mov esi, eax
shr esi, 1
je 0x10029dc1
lea ecx, [esp + 0x34]
call fcn.1008bea0
test eax, eax
je 0x10029dc1
lea eax, [esi + esi + 4]
push eax
lea ebp, [esi + esi]
call fcn.10017110
mov edi, eax
add esp, 4
test edi, edi
lea ecx, [esp + 0x34]
jne 0x10029d8f
mov byte [esp + 0x108], 1
call fcn.10018a90
lea ecx, [esp + 0x50]
jmp 0x10029840
call fcn.1008bea0
mov ecx, edi
movzx edx, byte [eax + 1]
mov byte [ecx], dl
movzx edx, byte [eax]
mov byte [ecx + 1], dl
add eax, 2
add ecx, 2
sub esi, 1
jne 0x10029d96
mov ecx, dword [esp + 0x20]
push ebp
push edi
call fcn.10019380
push edi
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 1
call fcn.10018a90
lea ecx, [esp + 0x50]
mov byte [esp + 0x108], 0
call fcn.10018a90
jmp 0x100297b5
lea eax, [ebp - 0xc42c]
cmp eax, 2
ja 0x10029ea8
lea ecx, [esp + 0x34]
call fcn.100182e0
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x11c]
mov eax, dword [esp + 0x110]
push edi
lea ecx, [esp + 0x38]
push ecx
push edx
push esi
mov esi, dword [esp + 0x34]
push 0x3a4
push eax
mov ecx, esi
mov byte [esp + 0x120], 0xb
call fcn.100289d0
mov bl, al
test bl, bl
jne 0x10029e40
mov byte [esi + 0x82], 1
lea ecx, [esp + 0x34]
call fcn.100f6330
test eax, eax
je 0x10029e92
lea ecx, [esp + 0x18]
call fcn.100796f0
mov ecx, dword [esp + 0x20]
push edi
push ecx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x110], 0xc
call fcn.100f6330
push eax
lea ecx, [esp + 0x40]
call fcn.1008bea0
push eax
lea ecx, [esp + 0x28]
call fcn.100798d0
lea ecx, [esp + 0x18]
mov byte [esp + 0x108], 0xb
call fcn.10079700
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 1
call fcn.10018a90
jmp 0x10029bbd
cmp ebp, 0xc431
jne 0x10029f5d
lea ecx, [esp + 0x6c]
call fcn.100182e0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x11c]
push edx
lea eax, [esp + 0x70]
push eax
push ecx
push esi
mov esi, dword [esp + 0x34]
push 0x3b5
push ebx
mov ecx, esi
mov byte [esp + 0x120], 0xd
call fcn.100289d0
mov bl, al
test bl, bl
jne 0x10029ef6
mov byte [esi + 0x82], 1
lea ecx, [esp + 0x6c]
call fcn.100f6330
test eax, eax
je 0x10029f47
lea ecx, [esp + 0x24]
call fcn.100793d0
mov edx, dword [esp + 0x20]
push edx
lea ecx, [esp + 0x70]
mov byte [esp + 0x10c], 0xe
call fcn.100f6330
push eax
lea ecx, [esp + 0x74]
call fcn.1008bea0
push eax
lea ecx, [esp + 0x30]
call fcn.10079550
lea ecx, [esp + 0x24]
mov byte [esp + 0x108], 0xd
call fcn.100793e0
lea ecx, [esp + 0x6c]
mov byte [esp + 0x108], 1
call fcn.10018a90
jmp 0x10029bbd
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x11c]
push eax
mov eax, dword [esp + 0x118]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push esi
push eax
push ebx
call fcn.100289d0
mov bl, al
jmp 0x10029bbd
lea ecx, [esp + 0x34]
call fcn.100182e0
cmp ebx, 0xfde9
jne 0x10029ff8
mov ecx, dword [esp + 0x11c]
push ecx
push esi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x110], 8
call fcn.10018d50
cmp ebp, 0xfdee
je 0x10029fc8
cmp ebp, 0x2ee1
je 0x10029fc8
xor al, al
jmp 0x10029fcd
mov eax, 1
mov edx, dword [esp + 0x20]
push edx
lea ecx, [esp + 0x38]
push ecx
push eax
call fcn.10066690
add esp, 0xc
lea ecx, [esp + 0x34]
mov bl, al
mov byte [esp + 0x108], 1
call fcn.10018a90
jmp 0x10029bbd
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x11c]
push edx
lea eax, [esp + 0x38]
push eax
push ecx
push esi
push 0xfde9
push ebx
mov ecx, edi
mov byte [esp + 0x120], 9
call fcn.100289d0
test al, al
jne 0x10029fb4
jmp 0x10029a4e