Function at 0x404db0
Capabilities:
Parse pe header

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x24
mov ebx, dword [esp + 0x44]
movzx ebp, word [esp + 0x40]
mov esi, dword [esp + 0x38]
mov dword [ebx], 0
lea eax, [esi + 0x14]
mov dword [esp + 0x20], eax
mov edi, 0x997c8968
mov dword [esp + 0xc], esi
jmp 0x404e00
cmp dword [0x5c1734], 0xa
cmovl edi, esi
setl dh
xor dl, dh
cmovne edi, ecx
mov esi, dword [esp + 0xc]
nop word cs:[eax + eax]
cmp edi, 0xc0e544d
jle 0x404e50
cmp edi, 0x43c15051
jle 0x404ec0
cmp edi, 0x6bc25cb6
jg 0x404f8f
cmp edi, 0x62f63c52
jg 0x405072
cmp edi, 0x43c15052
je 0x405156
cmp edi, 0x4b02b7b8
jne 0x404e00
mov edi, 0x72d24bf8
jmp 0x404e00
cmp edi, 0xb8ed97c2
jg 0x404f40
cmp edi, 0x9d4a4f65
jle 0x404fd5
cmp edi, 0xb6ae3c1d
jg 0x405094
cmp edi, 0x9d4a4f66
je 0x405160
cmp edi, 0xadd27da4
jne 0x404e00
movzx eax, bp
movzx ecx, byte [esp + 0x3c]
mov edi, 0x43c15052
push dword [esp + 4]
push dword [esp + 0x14]
push ebx
push eax
push ecx
push esi
call fcn.00406170
mov dword [esp], eax
jmp 0x404e00
cmp edi, 0x17433dfc
jle 0x40500a
cmp edi, 0x1e9a1bf7
jg 0x4050cb
cmp edi, 0x17433dfd
je 0x405175
cmp edi, 0x17d9b695
jne 0x404e00
mov ecx, dword [0x5c1738]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
mov ecx, 0x8522623a
mov edi, 0x9b0834d2
mov esi, 0x8522623a
cmp edx, 0xffffffff
sete dl
je 0x404f1d
mov esi, 0x9b0834d2
cmp dword [0x5c1734], 0xa
cmovl edi, esi
setl dh
xor dh, dl
jmp 0x404deb
cmp edi, 0xe534c3f4
jle 0x405044
cmp edi, 0xfde6f528
jg 0x405102
cmp edi, 0xe534c3f5
je 0x4051c7
cmp edi, 0xf93017bd
jne 0x404e00
mov ecx, dword [esp + 0x14]
mov edi, 0x7935405
cmp ecx, 0x20b
jl 0x404e00
mov edi, 0xc7933f91
jmp 0x404e00
cmp edi, 0x72d24bf7
jg 0x405139
cmp edi, 0x6bc25cb7
je 0x4051e6
cmp edi, 0x6ea8e42d
jne 0x404e00
movzx eax, bp
mov edi, 0x43c15052
push dword [esp + 4]
push dword [esp + 0x14]
push ebx
push eax
push 0
push esi
call fcn.00406580
mov dword [esp], eax
jmp 0x404e00
cmp edi, 0x8522623a
je 0x405202
cmp edi, 0x997c8968
je 0x40524f
cmp edi, 0x9b0834d2
jne 0x404e00
mov edi, 0x8522623a
mov dword [esp], 0
jmp 0x404e00
cmp edi, 0xc0e544e
je 0x405269
cmp edi, 0x12ea247a
je 0x405286
cmp edi, 0x13181e79
jne 0x404e00
mov edi, 0x9d4a4f66
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
jmp 0x404e00
cmp edi, 0xb8ed97c3
je 0x4052a0
cmp edi, 0xc7933f91
je 0x4052d7
cmp edi, 0xd9912f75
jne 0x404e00
mov edi, 0x62f63c53
jmp 0x404e00
cmp edi, 0x62f63c53
je 0x4052f6
cmp edi, 0x6ab8d645
jne 0x404e00
mov edi, 0x43c15052
jmp 0x404e00
cmp edi, 0xb6ae3c1e
je 0x405325
cmp edi, 0xb6c6eda2
jne 0x404e00
mov eax, dword [esp + 0x18]
cmp dword [eax], 0x4550
mov edi, 0x6bc25cb7
je 0x404e00
mov edi, 0x13181e79
jmp 0x404e00
cmp edi, 0x1e9a1bf8
je 0x40534b
cmp edi, 0x39bc6771
jne 0x404e00
mov ecx, dword [esp + 0x14]
mov edi, 0x6ea8e42d
cmp ecx, 0x107
je 0x404e00
mov edi, 0x748f5d00
jmp 0x404e00
cmp edi, 0xfde6f529
je 0x40539d
cmp edi, 0x7935405
jne 0x404e00
mov ecx, dword [esp + 0x14]
mov edi, 0x1e9a1bf8
cmp ecx, 0x10b
je 0x404e00
mov edi, 0x748f5d00
jmp 0x404e00
cmp edi, 0x748f5d00
jne 0x4053d3
mov edi, 0x43c15052
mov dword [esp], 0
jmp 0x404e00
mov edi, 0x72d24bf8
jmp 0x404e00
mov eax, dword [esp + 4]
movzx ecx, word [eax]
mov dword [esp + 0x14], ecx
mov edi, 0xe534c3f5
jmp 0x404e00
movzx eax, bp
movzx ecx, byte [esp + 0x3c]
push dword [esp + 4]
push dword [esp + 0x14]
push ebx
push eax
push ecx
push esi
call fcn.00405f40
mov dword [esp], eax
mov ecx, dword [0x5c1738]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
mov ecx, 0x6ab8d645
mov edi, 0xb6ae3c1e
mov esi, 0x6ab8d645
cmp edx, 0xffffffff
sete dl
je 0x404ddc
mov esi, 0xb6ae3c1e
jmp 0x404ddc
mov ecx, dword [esp + 0x14]
mov edi, 0x39bc6771
cmp ecx, 0x10b
jl 0x404e00
mov edi, 0xf93017bd
jmp 0x404e00
mov eax, dword [esp + 0x18]
lea ecx, [eax + 4]
mov dword [esp + 0x10], ecx
add eax, 0x18
mov dword [esp + 4], eax
mov edi, 0x9d4a4f66
jmp 0x404e00
mov eax, dword [0x5c1738]
lea ecx, [eax + 1]
imul ecx, eax
mov esi, ecx
xor esi, 0xfffffffe
mov eax, 0x4b02b7b8
mov edi, 0x9b0834d2
mov edx, 0x4b02b7b8
test esi, ecx
sete cl
je 0x40522d
mov edx, 0x9b0834d2
cmp dword [0x5c1734], 0xa
setl ch
cmovl edi, edx
xor cl, ch
cmovne edi, eax
mov dword [esp], 0
mov esi, dword [esp + 0xc]
jmp 0x404e00
cmp dword [esp + 0x38], 0
mov edi, 0x17d9b695
je 0x404e00
mov edi, 0xb8ed97c3
jmp 0x404e00
mov edi, 0xb6c6eda2
cmp dword [esp + 0x1c], 0x10000000
jb 0x404e00
mov edi, 0x13181e79
jmp 0x404e00
cmp byte [esp + 0xb], 0
mov edi, 0xc0e544e
jne 0x404e00
mov edi, 0x13181e79
jmp 0x404e00
movzx ecx, word [esi]
mov edi, 0xfde6f529
cmp ecx, 0x5a4d
je 0x4052b5
mov edi, 0x13181e79
mov eax, dword [esi + 0x3c]
mov dword [esp + 0x1c], eax
add eax, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], 0
mov dword [esp + 4], 0
jmp 0x404e00
mov ecx, dword [esp + 0x14]
mov edi, 0xadd27da4
cmp ecx, 0x20b
je 0x404e00
mov edi, 0x748f5d00
jmp 0x404e00
cmp dword [esp + 0x1c], 0
setg byte [esp + 0xb]
mov ecx, dword [0x5c1738]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
mov ecx, 0x12ea247a
mov edi, 0xd9912f75
mov esi, 0x12ea247a
jmp 0x4053bd
movzx eax, bp
movzx ecx, byte [esp + 0x3c]
mov edi, 0x17433dfd
push dword [esp + 4]
push dword [esp + 0x14]
push ebx
push eax
push ecx
push esi
call fcn.00405f40
mov dword [esp], eax
jmp 0x404e00
mov eax, ebx
mov esi, dword [0x5c1738]
mov ecx, dword [0x5c1734]
lea edx, [esi + 1]
imul edx, esi
mov esi, edx
xor esi, 0xfffffffe
test esi, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x17433dfd
mov ebp, 0x17433dfd
jne 0x405382
mov ebp, 0xb6ae3c1e
test esi, edx
cmovne edi, ebp
cmp ecx, 0xa
cmovge edi, ebp
mov ebx, eax
movzx ebp, word [esp + 0x40]
mov esi, dword [esp + 0xc]
jmp 0x404e00
mov ecx, dword [0x5c1738]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
mov ecx, 0x62f63c53
mov edi, 0xd9912f75
mov esi, 0x62f63c53
cmp edx, 0xffffffff
sete dl
je 0x404ddc
mov esi, 0xd9912f75
jmp 0x404ddc
cmp edi, 0x72d24bf8
jne 0x404e00
mov eax, dword [esp]
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret 0x10