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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x7c
mov ebp, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
mov eax, dword [ebp + 0xa4]
mov esi, dword [eax + 0x54]
test esi, esi
je 0x4384c5
mov dword [esp + 4], str._nProgram_Header:_n
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [ebp + 0xa4]
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x4384c5
xor edi, edi
lea esi, [esi]
mov eax, dword [esi]
cmp eax, 7
ja case.default.0x43833b
jmp dword [eax*4 + 0x489cc4]
mov edx, str.LOAD
lea esi, [esi]
mov dword [esp + 8], edx
mov dword [esp + 4], str._8s_off____0x
mov dword [esp], ebx
call fcn.0042dfa0
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
call fcn.00403590
mov dword [esp + 4], str._vaddr_0x
mov dword [esp], ebx
call fcn.0042dfa0
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
call fcn.00403590
mov dword [esp + 4], str._paddr_0x
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.00403590
mov edx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00404390
mov dword [esp + 4], str._align_2_u_n
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.0042dfa0
mov dword [esp + 4], str._________filesz_0x
mov dword [esp], ebx
call fcn.0042dfa0
mov edx, dword [esi + 0x24]
mov eax, dword [esi + 0x20]
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
call fcn.00403590
mov dword [esp + 4], str._memsz_0x
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.00403590
mov eax, dword [esi + 4]
mov dword [esp + 4], str._flags__c_c_c
mov dword [esp], ebx
mov edx, eax
and edx, 1
cmp edx, 1
mov edx, eax
sbb ecx, ecx
and edx, 2
and ecx, 0xffffffb5
add ecx, 0x78
cmp edx, 1
sbb edx, edx
and eax, 4
mov dword [esp + 0x10], ecx
and edx, 0xffffffb6
add edx, 0x77
cmp eax, 1
sbb eax, eax
mov dword [esp + 0xc], edx
and eax, 0xffffffbb
add eax, 0x72
mov dword [esp + 8], eax
call fcn.0042dfa0
mov eax, dword [esi + 4]
cmp eax, 7
ja 0x438808
mov dword [esp + 4], 0x489a5a
add edi, 1
add esi, 0x38
mov dword [esp], ebx
call fcn.0042dfa0
cmp dword [esp + 0x2c], edi
jne 0x438330
mov dword [esp + 4], 0x4896f0
mov dword [esp], ebp
call fcn.00405300
mov edi, eax
test eax, eax
je 0x4385d0
mov dword [esp + 4], str._nDynamic_Section:_n
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [edi + 0x30]
mov edx, dword [edi + 0x34]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00403e60
mov esi, eax
test eax, eax
je 0x438545
mov eax, dword [edi + 0x30]
mov edx, dword [edi + 0x34]
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.00405900
test eax, eax
jne 0x438860
mov dword [esp], esi
call sub.msvcrt.dll_free
add esp, 0x7c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
lea ebx, [esp + 0x5c]
mov dword [esp + 8], eax
mov dword [esp + 4], str.0x_lx
mov dword [esp], ebx
call fcn.0042df70
mov dword [esp + 8], ebx
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
lea esi, [esi]
mov eax, dword [esp + 0x50]
mov dword [esp + 4], str.0x_lx
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.0042dfa0
mov dword [esp + 4], 0x489a5a
mov dword [esp], esi
call fcn.0042dfa0
mov eax, dword [esp + 0x30]
add edi, eax
mov eax, dword [esp + 0x34]
cmp edi, eax
jb 0x4388d0
mov ebx, esi
mov ebp, dword [esp + 0x90]
mov esi, dword [esp + 0x3c]
mov dword [esp], esi
call sub.msvcrt.dll_free
nop
mov eax, dword [ebp + 0xa4]
mov edi, dword [eax + 0x318]
test edi, edi
je 0x438748
mov edx, dword [eax + 0x39c]
test edx, edx
je 0x438940
mov edi, dword [eax + 0x31c]
test edi, edi
jne 0x43892b
mov dword [esp + 4], str._nVersion_definitions:_n
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [ebp + 0xa4]
mov edi, dword [eax + 0x39c]
test edi, edi
jne 0x438633
jmp 0x438964
mov edi, dword [edi + 0x1c]
test edi, edi
je 0x4386c1
mov eax, dword [edi + 0x18]
mov dword [esp + 0x14], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x10], eax
movzx eax, word [edi + 2]
mov dword [esp + 0xc], eax
movzx eax, word [edi + 4]
mov dword [esp + 4], str._d_0x_2.2x_0x_8.8lx__s_n
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x438628
mov dword [esp + 4], 0x489c71
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [edi + 0x20]
mov esi, dword [eax + 0xc]
test esi, esi
je 0x4386a6
lea esi, [esi]
mov eax, dword [esi + 8]
mov dword [esp + 4], 0x489c73
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0042dfa0
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x438688
mov dword [esp + 4], 0x489a5a
mov dword [esp], ebx
call fcn.0042dfa0
mov edi, dword [edi + 0x1c]
test edi, edi
jne 0x438633
mov eax, dword [ebp + 0xa4]
mov eax, dword [eax + 0x31c]
test eax, eax
jne 0x438764
mov eax, 1
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, 0x4899d5
jmp 0x438350
mov edx, str.PHDR
jmp 0x438350
mov edx, str.SHLIB
jmp 0x438350
mov edx, str.NOTE
jmp 0x438350
mov edx, str.INTERP
jmp 0x438350
mov edx, str.DYNAMIC
jmp 0x438350
mov esi, dword [eax + 0x31c]
test esi, esi
je 0x4386d5
mov ecx, dword [eax + 0x3a0]
test ecx, ecx
je 0x438940
mov dword [esp + 4], str._nVersion_References:_n
mov dword [esp], ebx
call fcn.0042dfa0
mov eax, dword [ebp + 0xa4]
mov edi, dword [eax + 0x3a0]
test edi, edi
je 0x4386d5
lea esi, cs:[esi]
mov eax, dword [edi + 0x14]
mov dword [esp + 4], str.__required_from__s:_n
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0042dfa0
mov esi, dword [edi + 0x18]
test esi, esi
je 0x4387e4
nop
mov eax, dword [esi + 0x10]
mov dword [esp + 0x14], eax
movzx eax, word [esi + 6]
mov dword [esp + 0x10], eax
movzx eax, word [esi + 4]
mov dword [esp + 0xc], eax
mov eax, dword [esi]
mov dword [esp + 4], str.____0x_8.8lx_0x_2.2x__2.2d__s_n
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.0042dfa0
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x4387b0
mov edi, dword [edi + 0x1c]
test edi, edi
jne 0x438790
mov eax, 1
jmp 0x4386da
mov edx, str.NULL
jmp 0x438350
and eax, 0xfffffff8
mov dword [esp + 4], str.__lx
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.0042dfa0
jmp 0x4384a5
mov edx, str.EH_FRAME
cmp eax, 0x6474e550
je 0x438350
lea edx, [esp + 0x5c]
mov dword [esp + 8], eax
mov dword [esp], edx
mov dword [esp + 4], str.0x_lx
call fcn.0042df70
lea edx, [esp + 0x5c]
jmp 0x438350
mov dword [esp + 4], edi
mov dword [esp], ebp
call fcn.00431b60
cmp eax, 0xffffffff
je 0x43853d
mov edx, dword [ebp + 0xa4]
mov edx, dword [edx + 0x50]
mov eax, dword [edx + eax*4]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x178]
mov eax, dword [eax + 0xd4]
movzx ecx, byte [eax + 6]
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 0x30]
mov edi, esi
mov dword [esp + 0x30], ecx
add eax, esi
mov dword [esp + 0x34], eax
cmp esi, eax
jae 0x4385c7
mov dword [esp + 0x90], ebp
mov dword [esp + 0x3c], esi
mov esi, ebx
lea esi, cs:[esi]
nop
lea eax, [esp + 0x48]
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
call eax
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov ecx, eax
mov ebx, edx
or ecx, edx
je 0x4385ba
mov ecx, 0x21
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb 0x438980
mov ecx, 0x21
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb case.0x438a35.1
jmp dword [eax*4 + 0x489ce4]
mov esi, dword [eax + 0x3a0]
test esi, esi
jne 0x438600
lea esi, [esi]
mov dword [esp], ebp
call fcn.00437d70
test eax, eax
je 0x438545
mov eax, dword [ebp + 0xa4]
mov ecx, dword [eax + 0x318]
test ecx, ecx
jne 0x438600
mov eax, dword [eax + 0x31c]
test eax, eax
je 0x4386d5
jmp 0x438764
mov ecx, 0x6ffffeff
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb 0x4389f0
mov ecx, 0x6ffffef9
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb 0x438a40
mov ecx, eax
mov ebp, 7
add ecx, 0x90000208
adc ebx, 0xffffffff
cmp ebp, ecx
mov ebp, 0
sbb ebp, ebx
jb case.0x438a35.1
add eax, 0x90000207
mov ecx, 6
adc edx, 0xffffffff
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb case.default.0x4389df
jmp dword [eax*4 + 0x489d6c]
mov ecx, 0x6fffffff
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb 0x438a63
mov ecx, 0x6fffffef
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jae case.0x438a35.1
mov ecx, eax
mov ebp, 0xf
mov ebx, edx
add ecx, 0x90000010
adc ebx, 0xffffffff
cmp ebp, ecx
mov ebp, 0
sbb ebp, ebx
jb case.0x438a35.1
jmp dword [ecx*4 + 0x489d88]
add eax, 0x90000105
mov ecx, 4
adc edx, 0xffffffff
cmp ecx, eax
mov ecx, 0
sbb ecx, edx
jb case.default.0x438a5c
jmp dword [eax*4 + 0x489dc8]
mov ecx, eax
xor ecx, 0x7ffffffe
or ecx, edx
je 0x4390f4
mov ecx, eax
xor ecx, 0x7fffffff
or ecx, edx
je 0x438af0
mov ecx, eax
xor ecx, 0x7ffffffd
or ecx, edx
jne case.0x438a35.1
mov dword [esp + 8], str.AUXILIARY
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
lea esi, cs:[esi]
nop
mov eax, dword [esp + 0x50]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call fcn.0042ed90
test eax, eax
je 0x4390eb
mov dword [esp + 8], eax
mov dword [esp + 4], 0x48959f
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438598
mov dword [esp + 8], str.FILTER
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.DEPAUDIT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.MOVETAB
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMINFO
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PLTPAD
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.AUDIT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.POSFLAG_1
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.FEATURE
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.MOVESZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.MOVEENT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PLTPADSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMINSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMINENT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PREINIT_ARRAYSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PREINIT_ARRAY
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.FLAGS
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RUNPATH
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.FINI_ARRAYSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.INIT_ARRAYSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.FINI_ARRAY
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.INIT_ARRAY
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.BIND_NOW
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.JMPREL
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.TEXTREL
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], 0x489bb9
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PLTREL
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELENT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], 0x489bd3
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMBOLIC
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RPATH
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.SONAME
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.FINI
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.INIT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMENT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.STRSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELAENT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELASZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELA
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.SYMTAB
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.STRTAB
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.HASH
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PLTGOT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.PLTRELSZ
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.NEEDED
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.VERNEEDNUM
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.VERNEED
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.VERDEFNUM
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.VERDEF
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.FLAGS_1
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELCOUNT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.RELACOUNT
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.VERSYM
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov esi, dword [esp + 0x3c]
jmp 0x43853d
mov dword [esp + 8], str.USED
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580
mov dword [esp + 8], str.CONFIG
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438ab0
mov dword [esp + 8], str.CHECKSUM
mov dword [esp + 4], str.____11s
mov dword [esp], esi
call fcn.0042dfa0
jmp 0x438580