Function at 0x405cba
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x4cabf1
call fcn.004ca750
sub esp, 0x54
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], 0x75a8
cmp dword [ebp - 0x24], 0x7986
jle 0x405e05
xor esi, esi
mov dword [ebp - 0x20], esi
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 0x1538
mov dword [ebp - 0x2c], 0x12b1
cmp dword [ebp - 0x2c], 0x19f9
jle 0x405d92
jge 0x405d81
pop ebx
fist dword [esi]
or byte [ebp + 0x61], cl
mov byte [esp + ebx*4 + 0x2c], dh
mov dword [ebp + 0x32fa305d], esi
dec edx
cmp eax, dword [ebx + 0x9bbdeae]
into
shl dword [esi + 0x28], cl
popfd
mov word [ebx + 0x59], ss
salc
pushal
inc ebp
inc edx
dec esi
mov eax, 0x8643cd28
daa
xchg byte [edi], ah
cmp al, ch
rcr dword [edx + ecx*4 + 0x11637797], 0xdd
pushfd
adc esi, dword [esi]
jo 0x405d36
sal byte [edi - 0x7a370da7], 0x7c
push eax
scasd eax, dword es:[edi]
aam 0xad
push ecx
rol edi, 1
mov ch, 0x2e
bound edi, qword [edx - 0x317e15d7]
outsb dx, byte [esi]
inc ebp
xchg ebx, eax
inc ebx
mov ebp, 0x940fdd62
push edx
les edi, [ebx]
fxch st(6)
shr dword [eax + 0x43e19b57], 1
push ebx
inc esp
jne 0x405dab
sti
invalid
loope 0x405d85
add ch, dh
outsd dx, dword [esi]
or esp, dword [edi - 0x75]
xor dword [ebx], esp
rcr dword [eax + 0x6aa0936b], cl
mov ecx, 0x758bdb33
call 0xc6cc5cce
xor ebx, ebx
mov esi, dword [ebp - 0x18]
xor edi, edi
mov eax, esi
cdq
idiv ebx
mov esi, edx
mov eax, esi
mov ecx, edi
shl eax, cl
cdq
push edx
push eax
lea ecx, [ebp - 0x48]
call fcn.00405444
pop ecx
pop ecx
mov eax, 0xfff693e8
call [ecx + 0x59]
cmp dword [eax + 0x14], 0x10
jb 0x405dbb
mov eax, dword [eax]
push eax
call fcn.004b505d
pop ecx
push 0
push 1
lea ecx, [ebp - 0x48]
call fcn.004032c9
inc edi
cmp edi, 0x2c53
jl 0x405da0
inc ebx
cmp ebx, 0x4848
mov esi, dword [ebp - 0x18]
jl 0x405d97
mov esi, dword [ebp - 0x20]
add dword [ebp - 0x18], esi
dec dword [ebp - 0x1c]
jne 0x405cf7
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x42cd
jl 0x405ceb
mov edi, dword [ebp - 0x14]
and dword [ebp - 4], 0
cmp dword [ebp - 0x24], 0x735c
jge 0x405e1d
push str.dpcbhc_eoykh_ooot_upn
call fcn.004b505d
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x405e44
mov dword [ebp - 0x20], 0x1d57
cmp dword [ebp - 0x20], 0x2044
jle 0x405e9b
xor esi, esi
mov dword [ebp - 0x24], esi
xor ebx, ebx
and dword [ebp - 0x2c], 0
mov edi, ebx
and edi, esi
mov esi, dword [ebp - 0x2c]
mov eax, edi
xor eax, esi
cdq
push edx
push eax
mov ecx, 0xac6f98
call fcn.0042d438
inc esi
cmp esi, 0x395a
jl 0x405e66
inc ebx
cmp ebx, 0x4a7c
mov esi, dword [ebp - 0x24]
jl 0x405e5b
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x49fa
jl 0x405e59
mov edi, dword [ebp - 0x14]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 2
cmp dword [ebp - 0x20], 0x1aec
jge 0x405ec3
mov edx, str.obaxqww_swosuiyv_zlop_blsxtrr_hpznslxr_htszzgha_fld_neqfko_ykijotl_jwrsu_zstyl_fbninb
mov ecx, 0xac6f98
call fcn.0042ec78
mov eax, dword [ebp - 0x18]
or dword [ebp - 4], 0xffffffff
jmp 0x405eed
mov dword [ebp - 0x2c], 0x3f8
cmp dword [ebp - 0x2c], 0x1747
jle 0x405fe7
leave
rol dword [edx], 1
pop edi
dec edi
cmc
xchg esi, eax
jge 0x405f78
xor bh, ch
xchg dword [eax - 0x7937990d], ecx
aas
dec eax
sub byte [edx - 0x38], al
adc edx, dword [edx - 0x74]
inc esp
ret 0xc92b
pop edi
or dword [eax], eax
xor ebx, ebx
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x1c], ebx
cmp ebx, ecx
jae 0x406196
mov dword [ebp - 0x28], 0x558f
cmp dword [ebp - 0x28], 0x5701
jle 0x406081
xor edi, edi
mov dword [ebp - 0x20], edi
xor esi, esi
mov dword [ebp - 0x24], esi
xor ebx, ebx
mov dword [ebp - 0x30], esi
xor esi, edi
xor edi, edi
mov eax, esi
or eax, edi
or eax, ebx
cdq
push edx
push eax
lea ecx, [ebp - 0x60]
call fcn.00405444
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x406038
mov eax, dword [eax]
push eax
call fcn.004b505d
pop ecx
push 0
push 1
lea ecx, [ebp - 0x60]
call fcn.004032c9
inc edi
cmp edi, 0x1e2
jl 0x40601d
inc ebx
cmp ebx, 0x2b3f
jl 0x40601b
mov esi, dword [ebp - 0x24]
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x5a5e
mov edi, dword [ebp - 0x20]
jl 0x406014
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x6a16
jl 0x40600f
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x30], 0x96b
cmp dword [ebp - 0x30], 0x19be
jle 0x4060fa
retf
cmp dword [edi + 0x10], ebx
ja 0x406109
push str.kBBsYhLelPAPRyvRYGPkYCT
call fcn.004b2e02
cmp dword [edi + 0x14], 8
jb 0x406113
mov eax, dword [edi]
jmp 0x406115
mov eax, edi
movzx eax, word [eax + ebx*2]
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], 4
cmp dword [ebp - 0x28], 0x53ce
jge 0x406137
push str.pmbsy_tepeglm_tpnbax_iwlpeilch_mgxedfjxd_reg_qefcva_gjalxf_mjgbuajos_mytrnjztg_ukb_tujnuoq_viaokrkf
call fcn.004b505d
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x406161
lea edx, [ebx + 0x7538]
mov ecx, dword [ebp - 0x24]
call fcn.00430b8e
movzx esi, ax
mov eax, dword [ebp - 0x24]
movzx eax, ax
add eax, ebx
xor edx, edx
push 0x19
pop ecx
div ecx
mov ecx, edx
shl esi, cl
mov eax, dword [ebp - 0x18]
add eax, esi
mov dword [ebp - 0x18], eax
inc ebx
mov ecx, dword [ebp - 0x2c]
jmp 0x405fef
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret