Function at 0x5474c0
Capabilities:
Parse pe header

Disassembly:
push ebx
mov ebx, eax
movzx ecx, byte [ebx]
push ebp
mov ebp, dword [esp + 0xc]
lea eax, [ecx - 9]
cmp eax, 0x75
push esi
push edi
ja case.0x5474e2.34
movzx eax, byte [eax + 0x547af8]
mov dl, 4
jmp dword [eax*4 + 0x547a90]
movzx ecx, byte [ebx + 1]
mov eax, 1
test byte [ecx + 0x606df8], al
je 0x547511
lea ebx, [ebx]
movzx edx, byte [eax + ebx + 1]
add eax, 1
test byte [edx + 0x606df8], 1
jne 0x547500
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x2d
jne 0x54754d
movzx ecx, byte [ebx + 2]
test ecx, ecx
mov eax, 2
je 0x547541
cmp ecx, 0xa
je 0x547541
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test ecx, ecx
jne 0x547530
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x57
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x16
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x17
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 1
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x56
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x58
pop ebp
mov eax, 1
pop ebx
ret
cmp byte [ebx + 1], 0x2a
jne 0x5475ef
mov cl, byte [ebx + 2]
test cl, cl
je 0x5475ef
mov eax, 3
movzx ecx, cl
cmp ecx, 0x2a
jne 0x5475d3
cmp byte [eax + ebx], 0x2f
je 0x5475e0
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x5475e3
add eax, 1
jmp 0x5475c8
add eax, 1
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x59
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5a
pop ebp
mov eax, 1
pop ebx
ret
xor eax, eax
mov dword [ebp], 0x4c
cmp byte [ebx + 1], 0x3d
pop edi
sete al
pop esi
pop ebp
pop ebx
add eax, 1
ret
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x547643
pop edi
pop esi
mov dword [ebp], 0x4e
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3e
jne 0x547659
pop edi
pop esi
mov dword [ebp], 0x4b
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3c
jne 0x54766f
pop edi
pop esi
mov dword [ebp], 0x54
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x4f
pop ebp
mov eax, 1
pop ebx
ret
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x54769a
pop edi
pop esi
mov dword [ebp], 0x50
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3e
jne 0x5476b0
pop edi
pop esi
mov dword [ebp], 0x55
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x4d
pop ebp
mov eax, 1
pop ebx
ret
cmp byte [ebx + 1], 0x3d
mov eax, 2
jne 0x5479d0
pop edi
pop esi
mov dword [ebp], 0x4b
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x7c
je 0x5476f3
pop edi
pop esi
mov dword [ebp], 0x53
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5b
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x19
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x52
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5d
pop ebp
mov eax, 1
pop ebx
ret
movzx edx, byte [ebx + 1]
test edx, edx
mov eax, 1
je 0x547760
cmp edx, ecx
jne 0x547754
movzx esi, byte [ebx + eax + 1]
cmp esi, ecx
jne 0x547760
add eax, 1
movzx edx, byte [eax + ebx + 1]
add eax, 1
test edx, edx
jne 0x547744
cmp edx, 0x27
jne 0x547774
pop edi
pop esi
mov dword [ebp], 0x5e
pop ebp
add eax, 1
pop ebx
ret
test edx, edx
je 0x5479d0
pop edi
pop esi
mov dword [ebp], 0x1a
pop ebp
add eax, 1
pop ebx
ret
movzx eax, byte [ebx + 1]
test byte [eax + 0x606df8], dl
jne case.0x5474e2.24
pop edi
pop esi
mov dword [ebp], 0x76
pop ebp
mov eax, 1
pop ebx
ret
mov dword [ebp], 0x81
movzx ecx, byte [ebx]
xor eax, eax
test byte [ecx + 0x606df8], dl
je 0x5477d0
lea esp, [esp]
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
jne 0x5477c0
cmp byte [eax + ebx], 0x2e
jne 0x547807
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
je 0x547800
jmp 0x5477f0
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
jne 0x5477f0
mov dword [ebp], 0x82
mov cl, byte [eax + ebx]
cmp cl, 0x65
je 0x547814
cmp cl, 0x45
jne 0x547867
mov cl, byte [eax + ebx + 1]
movzx esi, cl
test byte [esi + 0x606df8], dl
jne 0x54783a
cmp cl, 0x2b
je 0x54782d
cmp cl, 0x2d
jne 0x547867
movzx ecx, byte [eax + ebx + 2]
test byte [ecx + 0x606df8], dl
je 0x547867
movzx ecx, byte [eax + ebx + 2]
add eax, 2
test byte [ecx + 0x606df8], dl
je 0x547860
lea ebx, [ebx]
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
jne 0x547850
mov dword [ebp], 0x82
movzx ecx, byte [eax + ebx]
mov dl, 0x46
test byte [ecx + 0x606df8], dl
je 0x547a8a
lea esp, [esp]
add eax, 1
mov dword [ebp], 0x94
movzx ecx, byte [eax + ebx]
test byte [ecx + 0x606df8], dl
jne 0x547880
pop edi
pop esi
pop ebp
pop ebx
ret
cmp ecx, 0x5d
mov eax, 1
je 0x5478b5
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x5478b5
add eax, 1
cmp ecx, 0x5d
jne 0x5478a5
sub ecx, 0x5d
neg ecx
sbb ecx, ecx
pop edi
and ecx, 0x7a
add ecx, 0x1a
pop esi
mov dword [ebp], ecx
pop ebp
pop ebx
ret
mov dword [ebp], 0x85
movzx ecx, byte [ebx + 1]
mov dl, 4
test byte [ecx + 0x606df8], dl
mov eax, 1
je 0x547a8a
jmp 0x5478f0
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
jne 0x5478f0
pop edi
pop esi
pop ebp
pop ebx
ret
movzx ecx, byte [ebx + 1]
mov dl, 4
test byte [ecx + 0x606df8], dl
mov eax, 1
je case.0x5474e2.13
jmp 0x547920
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test byte [ecx + 0x606df8], dl
jne 0x547920
cmp eax, 1
jle case.0x5474e2.13
pop edi
pop esi
mov dword [ebp], 0x84
pop ebp
pop ebx
ret
mov dword [ebp], 0x85
movzx ecx, byte [ebx + 1]
xor esi, esi
test ecx, ecx
lea eax, [esi + 1]
je 0x5479d0
mov dl, 0x46
jmp 0x547960
movzx edi, cl
test byte [edi + 0x606df8], dl
je 0x547970
add esi, 1
jmp 0x547983
cmp ecx, 0x28
je 0x547991
cmp ecx, 0x3a
jne 0x5479c8
cmp byte [ebx + eax + 1], cl
jne 0x5479c8
add eax, 1
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test ecx, ecx
jne 0x547960
jmp 0x5479c8
test esi, esi
jle 0x5479ca
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test ecx, ecx
je 0x5479b7
movzx edx, cl
test byte [edx + 0x606df8], 1
jne 0x5479b7
cmp ecx, 0x29
jne 0x547995
add eax, 1
jmp 0x5479c8
cmp ecx, 0x29
jne 0x5479c1
add eax, 1
jmp 0x5479c8
mov dword [ebp], 0x94
test esi, esi
jne 0x547a8a
pop edi
pop esi
mov dword [ebp], 0x94
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x27
jne case.0x5474e2.34
mov dword [ebp], 0x83
movzx ecx, byte [ebx + 2]
test ecx, ecx
mov eax, 2
je 0x547a1b
mov dl, 8
cmp ecx, 0x27
je 0x547a1b
movzx ecx, cl
test byte [ecx + 0x606df8], dl
jne 0x547a0f
mov dword [ebp], 0x94
movzx ecx, byte [eax + ebx + 1]
add eax, 1
test ecx, ecx
jne 0x5479f8
mov edx, eax
and edx, reloc.WS2_32.dll_accept
jns 0x547a2a
dec edx
or edx, 0xfffffffe
inc edx
jne 0x547a30
test ecx, ecx
jne 0x547a3b
test ecx, ecx
mov dword [ebp], 0x94
je 0x547a8a
pop edi
pop esi
pop ebp
add eax, 1
pop ebx
ret
mov dl, 0x46
test byte [ecx + 0x606df8], dl
jne 0x547a5e
pop edi
pop esi
mov dword [ebp], 0x94
pop ebp
mov eax, 1
pop ebx
ret
movzx eax, byte [ebx + 1]
test byte [eax + 0x606df8], dl
mov edi, 1
je 0x547a80
nop
movzx ecx, byte [edi + ebx + 1]
add edi, 1
test byte [ecx + 0x606df8], dl
jne 0x547a70
call fcn.00547430
mov dword [ebp], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
ret