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

Disassembly:
push 0x304
mov eax, 0x4b7389
call fcn.0048ff9b
xor ecx, ecx
mov dword [ebp - 4], ecx
mov eax, ecx
mov dword [ebp - 0x30], eax
mov edi, dword [ebp + 8]
cmp dword [edi + 0x64], eax
je 0x450dbf
lea eax, [edi + 0x68]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], 4
mov dword [ebp - 0x2c], 0x4bf240
mov dword [ebp - 0x2c], vtable.CObjectVector_struct_NArchive::N7z::CUpdateItem_.0
mov esi, ecx
mov dword [ebp - 0x78], esi
mov ebx, dword [ebp + 0x14]
cmp esi, dword [ebp + 0x10]
jae 0x45125f
test ebx, ebx
jne 0x450e04
lea ecx, [ebp - 0x2c]
call fcn.00450759
mov eax, 0x80004005
jmp 0x451531
mov eax, dword [ebx]
lea ecx, [ebp - 0xfc]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
lea ecx, [ebp - 0xf4]
push ecx
push esi
push ebx
call dword [eax + 0x14]
mov dword [ebp + 8], eax
test eax, eax
je 0x450e37
lea ecx, [ebp - 0x2c]
call fcn.00450759
mov eax, dword [ebp + 8]
jmp 0x451531
lea ecx, [ebp - 0x74]
call fcn.00450741
xor ecx, ecx
cmp dword [ebp - 0xf8], ecx
setne cl
mov byte [ebp - 0x3b], cl
xor eax, eax
cmp dword [ebp - 0xf4], eax
setne al
mov byte [ebp - 0x3c], al
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], esi
xor al, al
mov dword [ebp + 0x14], eax
mov byte [ebp - 0x3a], al
xorps xmm0, xmm0
movlpd qword [ebp - 0x54], xmm0
cmp edx, 0xffffffff
je 0x450f0f
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x450f74
cmp edx, dword [eax + 0x6c]
jge 0x450f74
mov eax, dword [eax + 0x70]
mov esi, dword [eax + edx*4]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x4c]
call fcn.0044153a
mov al, byte [esi + 0x1d]
mov byte [ebp - 0x39], al
mov eax, dword [esi]
mov dword [ebp - 0x54], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x50], eax
push dword [ebp - 0x74]
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.0044ef01
mov byte [ebp - 0x3a], al
lea eax, [ebp - 0x6c]
push eax
push dword [ebp - 0x74]
lea ecx, [esi + 0x78]
call fcn.0044fd06
mov byte [ebp - 0x37], al
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x74]
lea ecx, [esi + 0xa0]
call fcn.0044fd06
mov byte [ebp - 0x36], al
lea eax, [ebp - 0x5c]
push eax
push dword [ebp - 0x74]
lea ecx, [esi + 0xc8]
call fcn.0044fd06
mov byte [ebp - 0x35], al
mov al, byte [ebp - 0x3a]
mov dword [ebp + 0x14], eax
mov cl, byte [ebp - 0x3b]
mov esi, dword [ebp - 0x78]
test cl, cl
je 0x4511d9
xor eax, eax
mov dword [ebp - 0xa8], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0xa8]
push ecx
push 9
push esi
push ebx
call dword [eax + 0x18]
mov dword [ebp + 8], eax
test eax, eax
je 0x450f4f
lea ecx, [ebp - 0xa8]
call fcn.0045a52a
push dword [ebp - 0x4c]
call fcn.0048eb4d
pop ecx
jmp 0x450e27
cmp word [ebp - 0xa8], 0
jne 0x450f5f
mov byte [ebp - 0x38], 0
jmp 0x450f9c
cmp word [ebp - 0xa8], 0x13
je 0x450f8f
lea ecx, [ebp - 0xa8]
call fcn.0045a52a
push dword [ebp - 0x4c]
call fcn.0048eb4d
pop ecx
lea ecx, [ebp - 0x2c]
call fcn.00450759
mov eax, 0x80070057
jmp 0x451531
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x38], 1
lea ecx, [ebp - 0xa8]
call fcn.0045a52a
lea eax, [ebp - 0x37]
push eax
lea eax, [ebp - 0x6c]
push eax
push 0xa
movzx eax, byte [edi + 0x3d]
push eax
push esi
push ebx
call fcn.004508bc
add esp, 0x18
mov dword [ebp + 8], eax
test eax, eax
jne 0x450f41
lea eax, [ebp - 0x36]
push eax
lea eax, [ebp - 0x64]
push eax
push 0xb
pop eax
push eax
movzx eax, byte [edi + 0x3e]
push eax
push esi
push ebx
call fcn.004508bc
add esp, 0x18
mov dword [ebp + 8], eax
test eax, eax
jne 0x450f41
lea eax, [ebp - 0x35]
push eax
lea eax, [ebp - 0x5c]
push eax
push 0xc
push 1
push esi
push ebx
call fcn.004508bc
add esp, 0x18
mov dword [ebp + 8], eax
test eax, eax
jne 0x450f41
mov dword [ebp - 0xb8], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0xb8]
push ecx
push 3
push esi
push ebx
call dword [eax + 0x18]
mov dword [ebp + 8], eax
test eax, eax
je 0x45103a
lea ecx, [ebp - 0xb8]
jmp 0x450f3c
cmp word [ebp - 0xb8], 0
je 0x4510a2
push 8
pop eax
cmp word [ebp - 0xb8], ax
je 0x45105b
lea ecx, [ebp - 0xb8]
jmp 0x450f6f
push dword [ebp - 0xb0]
lea ecx, [ebp - 0x108]
call fcn.0043efe2
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x150]
push eax
call fcn.0044287f
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.0044153a
push dword [ebp - 0x150]
call fcn.0048eb4d
push dword [ebp - 0x108]
call fcn.0048eb4d
pop ecx
pop ecx
lea ecx, [ebp - 0xb8]
call fcn.0045a52a
xor eax, eax
mov dword [ebp - 0xc8], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0xc8]
push ecx
push 6
push esi
push ebx
call dword [eax + 0x18]
mov dword [ebp + 8], eax
test eax, eax
je 0x4510d7
lea ecx, [ebp - 0xc8]
jmp 0x450f3c
cmp word [ebp - 0xc8], 0
jne 0x4510e7
mov byte [ebp + 0xb], 0
jmp 0x451111
push 0xb
pop eax
cmp word [ebp - 0xc8], ax
je 0x4510fe
lea ecx, [ebp - 0xc8]
jmp 0x450f6f
xor eax, eax
cmp word [ebp - 0xc0], ax
setne al
mov byte [ebp - 0x39], al
mov byte [ebp + 0xb], 1
lea ecx, [ebp - 0xc8]
call fcn.0045a52a
xor eax, eax
mov dword [ebp - 0x98], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0x98]
push ecx
push 0x15
pop ecx
push ecx
push esi
push ebx
call dword [eax + 0x18]
mov dword [ebp + 0x14], eax
test eax, eax
je 0x451161
lea ecx, [ebp - 0x98]
call fcn.0045a52a
push dword [ebp - 0x4c]
call fcn.0048eb4d
pop ecx
lea ecx, [ebp - 0x2c]
call fcn.00450759
mov eax, dword [ebp + 0x14]
jmp 0x451531
cmp word [ebp - 0x98], 0
jne 0x45116f
xor al, al
jmp 0x451192
push 0xb
pop eax
cmp word [ebp - 0x98], ax
je 0x451186
lea ecx, [ebp - 0x98]
jmp 0x450f6f
xor eax, eax
cmp word [ebp - 0x90], ax
setne al
mov byte [ebp - 0x3a], al
mov dword [ebp + 0x14], eax
lea ecx, [ebp - 0x98]
call fcn.0045a52a
cmp byte [ebp + 0x14], 0
je 0x4511c1
xor ecx, ecx
mov al, cl
mov byte [ebp - 0x38], al
mov word [ebp - 0x37], cx
mov byte [ebp - 0x35], cl
xorps xmm0, xmm0
movlpd qword [ebp - 0x54], xmm0
jmp 0x4511c4
mov al, byte [ebp - 0x38]
cmp byte [ebp + 0xb], 0
jne 0x4511d9
test al, al
je 0x4511d9
mov eax, dword [ebp - 0x40]
shr eax, 4
and al, 1
mov byte [ebp - 0x39], al
cmp byte [ebp - 0x3c], 0
je 0x451241
xor eax, eax
mov dword [ebp - 0x88], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0x88]
push ecx
push 7
push esi
push ebx
call dword [eax + 0x18]
mov dword [ebp + 8], eax
test eax, eax
je 0x451209
lea ecx, [ebp - 0x88]
jmp 0x450f3c
push 0x15
pop eax
cmp word [ebp - 0x88], ax
je 0x451220
lea ecx, [ebp - 0x88]
jmp 0x450f6f
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x54], ecx
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x50], eax
or ecx, eax
je 0x451236
cmp byte [ebp + 0x14], 0
jne 0x451215
lea ecx, [ebp - 0x88]
call fcn.0045a52a
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x2c]
call fcn.004507b4
push dword [ebp - 0x4c]
call fcn.0048eb4d
pop ecx
inc esi
mov dword [ebp - 0x78], esi
jmp 0x450de5
lea ecx, [ebp - 0x144]
call fcn.0044c83d
lea ecx, [ebp - 0x18c]
call fcn.0044c83d
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x144]
push eax
lea ecx, [edi - 8]
call fcn.0045092b
mov esi, eax
test esi, esi
je 0x4512b6
lea ecx, [ebp - 0x18c]
call fcn.0044ca78
lea ecx, [ebp - 0x144]
call fcn.0044ca78
lea ecx, [ebp - 0x2c]
call fcn.00450759
mov eax, esi
jmp 0x451531
mov eax, dword [edi + 8]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x164], 1
and dword [ebp - 0x18], 0
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
push 0x4bffc8
push ebx
call dword [eax]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x451346
and dword [ebp + 8], 0
mov ecx, dword [eax]
lea edx, [ebp + 8]
push edx
lea edx, [ebp + 0x14]
push edx
push eax
call dword [ecx + 0xc]
mov esi, eax
test esi, esi
je 0x451315
push dword [ebp + 8]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x451291
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
jmp 0x451291
xor eax, eax
cmp dword [ebp + 0x14], eax
setne al
mov byte [ebp - 0x118], al
test al, al
je 0x451335
push dword [ebp + 8]
lea ecx, [ebp - 0x114]
call fcn.0043decf
push dword [ebp + 8]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov cl, byte [ebp - 0x118]
jmp 0x45134e
xor cl, cl
mov byte [ebp - 0x118], cl
mov dl, byte [edi + 0x3a]
mov byte [ebp - 0x12], dl
xor al, al
mov byte [ebp - 0x11], al
test cl, cl
je 0x45139a
cmp byte [edi + 0x3b], al
je 0x451367
mov al, byte [edi + 0x3c]
jmp 0x45136d
mov al, byte [edi + 0x238]
mov byte [ebp - 0x11], al
mov dl, 1
mov byte [ebp + 0xb], dl
mov byte [ebp - 0x12], dl
test al, al
je 0x45139a
mov byte [ebp - 0x160], cl
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x15c]
call fcn.0044153a
mov al, byte [ebp - 0x11]
mov dl, byte [ebp + 0xb]
movzx ecx, dl
xor edx, edx
cmp dword [ebp + 0x10], 2
cmovb ecx, edx
mov byte [ebp - 0x12], cl
mov dword [ebp - 0xe6], 0x1000001
lea edx, [ebp - 0x144]
mov dword [ebp - 0xf0], edx
cmp byte [edi + 0x3a], 0
jne 0x4513cd
test al, al
jne 0x4513cd
xor eax, eax
jmp 0x4513d3
lea eax, [ebp - 0x18c]
mov dword [ebp - 0xec], eax
cmp dword [edi + 0x44], 0
je 0x4513ea
cmp byte [edi + 0x40], 0
je 0x4513ea
xor eax, eax
inc eax
jmp 0x4513ec
xor eax, eax
mov byte [ebp - 0xe8], al
push 8
pop eax
cmp dword [edi + 0x44], eax
sbb eax, eax
inc eax
mov byte [ebp - 0xe7], al
mov byte [ebp - 0xe6], cl
mov al, byte [edi + 0x3d]
mov byte [ebp - 0xe5], al
mov al, byte [edi + 0x3e]
mov byte [ebp - 0xe4], al
mov al, byte [edi + 0x3f]
mov byte [ebp - 0xe3], al
mov eax, dword [edi + 0x28]
mov dword [ebp - 0xe0], eax
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0xdc], eax
mov eax, dword [edi + 0x30]
mov dword [ebp - 0xd8], eax
mov eax, dword [edi + 0x34]
mov dword [ebp - 0xd4], eax
mov al, byte [edi + 0x39]
mov byte [ebp - 0xd0], al
mov al, byte [edi + 0x24]
mov byte [ebp - 0xcf], al
mov al, byte [edi + 0x48]
mov byte [ebp - 0xce], al
lea ecx, [ebp - 0x1e4]
call fcn.00450686
lea ecx, [ebp - 0x310]
call fcn.0044f1d3
and dword [ebp - 0x34], 0
mov eax, dword [ebx]
lea ecx, [ebp - 0x34]
push ecx
push 0x4bffb8
push ebx
call dword [eax]
push dword [ebp - 0x34]
lea eax, [ebp - 0xf0]
push eax
push ebx
push dword [ebp + 0xc]
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x1e4]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x30]
push eax
push dword [edi + 0x64]
call fcn.004568bd
add esp, 0x24
mov esi, eax
test esi, esi
je 0x4514f7
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x4514cb
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
lea ecx, [ebp - 0x310]
call fcn.0044f4c9
lea ecx, [ebp - 0x1e4]
call fcn.0045076f
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x451291
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x451291
lea ecx, [ebp - 0x2c]
call fcn.0044998c
lea eax, [ebp - 0xe6]
push eax
push dword [ebp - 0xec]
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x1e4]
call fcn.00454354
mov esi, eax
jmp 0x4514be
call fcn.0048ff00
ret 0x10