Function at 0x60df18
Capabilities:
Parse pe header

Disassembly:
cmp ecx, dword [ebp - 0x370]
jle 0x60de91
push ecx
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
call 0x60df18
mov eax, dword [ebp + 8]
and eax, 1
je 0x60de8b
mov ecx, dword [ebp - 4]
push ecx
call fcn.005a58d8
add esp, 4
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
mov dword [ebp - 0x360], 0x38
mov dword [ebp - 0x364], 0xc6
mov edx, dword [ebp - 0x360]
cmp edx, dword [ebp - 0x364]
jle 0x60decf
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
cmp dword [ebp + 0x14], ebx
push edi
jne 0x60ded0
cmp esi, ebx
jne 0x60ded4
cmp dword [ebp + 0xc], ebx
jne 0x60dedb
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
mov dword [ebp - 0x37c], 0x34
test dword [esp + edi*8 + 0x34ffff], eax
push dword [eax + eax]
add byte [eax], al
mov dword [ebp - 0x36c], 0xb4
mov eax, dword [ebp - 0x37c]
cmp eax, dword [ebp - 0x36c]
jle 0x60def6
xchg esp, eax
cld
invalid
jmp 0x60daa2
mov dword [ebp - 0x378], 0x3f
mov dword [ebp - 0x380], 0x9f
mov ecx, dword [ebp - 0x378]
cmp ecx, dword [ebp - 0x380]
jle 0x60e0cc
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
push ebx
push esi
and dword [ecx], 0
mov esi, dword [ebp + 0x10]
push edi
mov edi, dword [ebp + 0xc]
mov dword [eax], 1
mov eax, dword [ebp + 8]
test edi, edi
je 0x60df43
mov dword [edi], esi
add edi, 4
mov dword [ebp + 0xc], edi
cmp byte [eax], 0x22
jne 0x60df8c
mov dl, byte [eax + 1]
inc eax
cmp dl, 0x22
je 0x60df7a
test dl, dl
je 0x60df7a
movzx edx, dl
test byte [edx + 0x429681], 4
je 0x60df6d
inc dword [ecx]
test esi, esi
je 0x60df6d
mov dl, byte [eax]
mov byte [esi], dl
inc esi
inc eax
inc dword [ecx]
test esi, esi
je 0x60df48
mov dl, byte [eax]
mov byte [esi], dl
inc esi
jmp 0x60df48
inc dword [ecx]
test esi, esi
je 0x60df84
and byte [esi], 0
inc esi
cmp byte [eax], 0x22
jne 0x60dfcf
inc eax
jmp 0x60dfcf
inc dword [ecx]
test esi, esi
je 0x60df97
mov dl, byte [eax]
mov byte [esi], dl
inc esi
mov dl, byte [eax]
inc eax
movzx ebx, dl
test byte [ebx + 0x429681], 4
je 0x60dfb2
inc dword [ecx]
test esi, esi
je 0x60dfb1
mov bl, byte [eax]
mov byte [esi], bl
inc esi
inc eax
cmp dl, 0x20
je 0x60dfc0
test dl, dl
je 0x60dfc4
cmp dl, 9
jne 0x60df8c
test dl, dl
jne 0x60dfc7
dec eax
jmp 0x60dfcf
test esi, esi
je 0x60dfcf
and byte [esi - 1], 0
and dword [ebp + 0x18], 0
cmp byte [eax], 0
je 0x60e0bc
mov dl, byte [eax]
cmp dl, 0x20
je 0x60dfe8
cmp dl, 9
jne 0x60dfeb
inc eax
jmp 0x60dfdc
cmp byte [eax], 0
je 0x60e0bc
test edi, edi
je 0x60e000
mov dword [edi], esi
add edi, 4
mov dword [ebp + 0xc], edi
mov edx, dword [ebp + 0x14]
inc dword [edx]
mov dword [ebp + 8], 1
xor ebx, ebx
cmp byte [eax], 0x5c
jne 0x60e017
inc eax
inc ebx
jmp 0x60e00e
cmp byte [eax], 0x22
jne 0x60e048
test bl, 1
jne 0x60e046
xor edi, edi
cmp dword [ebp + 0x18], edi
je 0x60e035
cmp byte [eax + 1], 0x22
lea edx, [eax + 1]
jne 0x60e035
mov eax, edx
jmp 0x60e038
mov dword [ebp + 8], edi
mov edi, dword [ebp + 0xc]
xor edx, edx
cmp dword [ebp + 0x18], edx
sete dl
mov dword [ebp + 0x18], edx
shr ebx, 1
mov edx, ebx
dec ebx
test edx, edx
je 0x60e05d
inc ebx
test esi, esi
je 0x60e058
mov byte [esi], 0x5c
inc esi
inc dword [ecx]
dec ebx
jne 0x60e050
mov dl, byte [eax]
test dl, dl
je 0x60e0ad
cmp dword [ebp + 0x18], 0
jne 0x60e073
cmp dl, 0x20
je 0x60e0ad
cmp dl, 9
je 0x60e0ad
cmp dword [ebp + 8], 0
je 0x60e0a7
test esi, esi
je 0x60e096
movzx ebx, dl
test byte [ebx + 0x429681], 4
je 0x60e08f
mov byte [esi], dl
inc esi
inc eax
inc dword [ecx]
mov dl, byte [eax]
mov byte [esi], dl
inc esi
jmp 0x60e0a5
movzx edx, dl
test byte [edx + 0x429681], 4
je 0x60e0a5
inc eax
inc dword [ecx]
inc dword [ecx]
inc eax
jmp 0x60e005
test esi, esi
je 0x60e0b5
and byte [esi], 0
inc esi
inc dword [ecx]
jmp 0x60dfd3
test edi, edi
je 0x60e0c3
and dword [edi], 0
mov eax, dword [ebp + 0x14]
pop edi
pop esi
pop ebx
inc dword [eax]
pop ebp
mov dword [ebp - 0x368], 0x5a
mov dword [ebp - 0x374], 0x6f
mov edx, dword [ebp - 0x368]
cmp edx, dword [ebp - 0x374]
jle 0x60e11e
push 0
push 4
pop eax
push eax
lea ecx, [ebp + 0x24]
push ecx
push eax
lea ecx, [ebp + 0x20]
push ecx
push eax
lea ecx, [ebp + 0x1c]
push ecx
push eax
lea eax, [ebp + 0x18]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push 0x2b
push dword [ebp + 0xc]
push dword [ebp + 8]
call 0x6f1681
add esp, 0x38
pop ebp
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x60]
push ecx
call dword [0x75727c]
mov dword [ebp - 0x2e8], 0x29
mov dword [ebp - 0x30c], 0xc0
mov edx, dword [ebp - 0x2e8]
cmp edx, dword [ebp - 0x30c]
jle 0x60e17d
sub esp, 8
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 4]
push edx
call 0x60e18b
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jge 0x60e177
mov eax, dword [ebp - 8]
push eax
call fcn.00604c1b
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
mov dword [ebp - 0x344], 0x1b
mov dword [ebp - 0x324], 0x92
mov eax, dword [ebp - 0x344]
cmp eax, dword [ebp - 0x324]
jle 0x60e1bb
push ecx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
mov edx, dword [ebp - 4]
mov dword [edx + 4], 0
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
mov dword [ebp - 0x340], 0x1d
mov dword [ebp - 0x2e4], 0x6b
mov ecx, dword [ebp - 0x340]
cmp ecx, dword [ebp - 0x2e4]
jle 0x60e1fd
mov eax, dword [ecx]
pop ebp
jmp dword [eax + 0x58]
mov dword [ebp - 0x2d0], 0x40
mov dword [ebp - 0x2fc], 0xa2
mov edx, dword [ebp - 0x2d0]
cmp edx, dword [ebp - 0x2fc]
xchg ebp, eax
add al, 0xfd
invalid
invalid
jle 0x60e23c
push ecx
mov dword [ebp - 4], ecx
push 0
push 0xb
push 0
mov ecx, dword [ebp - 4]
call fcn.0061fbce
mov ecx, dword [ebp - 4]
call fcn.0061f8c8
mov esp, ebp
pop ebp
mov dword [ebp - 0x34c], 0x4f
mov dword [ebp - 0x308], 0x74
mov eax, dword [ebp - 0x34c]
cmp eax, dword [ebp - 0x308]
jle 0x60e379
mov eax, dword [ebp + 0xc]
push ebx
push esi
cmp eax, 0xffffffff
push edi
mov esi, ecx
je 0x60e272
mov dword [esi + 0x10], eax
mov edi, dword [ebp + 8]
xor ebx, ebx
cmp edi, ebx
jne 0x60e29f
push dword [esi + 8]
push dword [esi + 4]
call 0x60e239
push dword [esi + 4]
call 0x60ed13
add esp, 0xc
mov dword [esi + 4], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 8], ebx
jmp 0x60e375
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x60e2c9
mov eax, edi
shl eax, 2
push eax
call 0x60ed25
push edi
push eax
mov dword [esi + 4], eax
call 0x60e37c
add esp, 0xc
mov dword [esi + 0xc], edi
mov dword [esi + 8], edi
jmp 0x60e375
mov ebx, dword [esi + 0xc]
cmp edi, ebx
jg 0x60e2f9
mov eax, dword [esi + 8]
cmp eax, edi
jge 0x60e2e7
mov edx, edi
sub edx, eax
lea eax, [ecx + eax*4]
push edx
push eax
call 0x60e37c
jmp 0x60e2f5
jle 0x60e2c1
sub eax, edi
push eax
lea eax, [ecx + edi*4]
push eax
call 0x60e239
pop ecx
pop ecx
jmp 0x60e2c1
mov eax, dword [esi + 0x10]
test eax, eax
jne 0x60e323
mov eax, dword [esi + 8]
push 8
cdq
pop ecx
idiv ecx
cmp eax, 4
jl 0x60e320
mov ecx, 0x400
cmp eax, ecx
jle 0x60e31b
mov eax, ecx
jmp 0x60e323
cmp eax, 4
jge 0x60e323
push 4
pop eax
add eax, ebx
cmp edi, eax
mov dword [ebp + 0xc], eax
jl 0x60e32f
mov dword [ebp + 0xc], edi
mov eax, dword [ebp + 0xc]
shl eax, 2
push eax
call 0x60ed25
mov ebx, eax
mov eax, dword [esi + 8]
shl eax, 2
push eax
push dword [esi + 4]
push ebx
call 0x60eeeb
mov eax, dword [esi + 8]
mov ecx, edi
sub ecx, eax
lea eax, [ebx + eax*4]
push ecx
push eax
call 0x60e37c
push dword [esi + 4]
call 0x60ed13
mov eax, dword [ebp + 0xc]
pop edi
pop esi
pop ebx
pop ebp
mov dword [ebp - 0x314], 0x2a
mov dword [ebp - 0x2c8], 0xb5
mov ecx, dword [ebp - 0x314]
cmp ecx, dword [ebp - 0x2c8]
jle 0x60e3a2
call dword [0x100222e0]
pop ebp
push 0x40
push 0x3000
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 0x50]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x34]
push edx
mov eax, dword [ebp - 0x60]
push eax
call dword [0x757288]
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x320], 0x50
mov dword [ebp - 0x2cc], 0x6c
mov ecx, dword [ebp - 0x320]
cmp ecx, dword [ebp - 0x2cc]
jle 0x60e459
push 0xffffffffffffffff
push 0x10172370
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 8
push ebx
push esi
push edi
mov eax, dword [0x101cf090]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x18], ecx
xor eax, eax
jne 0x60e415
xor ecx, ecx
jne 0x60e415
mov dword [ebp - 4], 0
xor ecx, ecx
mov eax, dword [ebp + 8]
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call 0x62c45c
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
jmp 0x60e45a
mov dword [ebp - 0x2f8], 0x45
mov dword [ebp - 0x2e0], 0xbd
mov edx, dword [ebp - 0x2f8]
cmp edx, dword [ebp - 0x2e0]
jle 0x60e5a8
test dword [eax], ecx
std
invalid
push 0xffffffffffffffff
push 0x45d6c8
mov eax, dword fs:[0]
push eax
push ebx
push esi
push edi
mov eax, dword [0x47a0f8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi]
mov edx, dword [eax + 4]
push 0
push ecx
push 0x467218
mov ecx, esi
call edx
mov ebx, eax
push ebx
push esi
mov ecx, edi
call fcn.00604b1c
push ebx
push esi
lea ecx, [edi + 0x68]
call fcn.00600cbc
lea ecx, [edi + 0xbe]
mov dword [ebp + 8], ecx
call fcn.005f3c3c
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
push 0
push 1
push 1
lea ecx, [edi + 0xc8]
push ecx
push ebx
push 0x467210
mov ecx, esi
mov dword [ebp - 4], 0
call edx
lea eax, [edi + 0xcc]
push eax
push ebx
push 0x467200
push esi
call 0x60dc1c
lea ecx, [edi + 0xe0]
push ecx
push ebx
push 0x4671f8
push esi
call 0x60dcac
lea edx, [edi + 0xf0]
push edx
push ebx
push 0x4671e8
push esi
call 0x60de9c
mov ecx, dword [edi + 0x110]
lea eax, [edi + 0x100]
add esp, 0x30
cmp dword [eax + 0x14], 8
jb 0x60e550
mov eax, dword [eax]
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
push 0
push 8
add ecx, ecx
push ecx
push eax
push ebx
push 0x4671dc
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
push 0
push 1
push 1
add edi, 0x11c
push edi
push ebx
push 0x4671c8
enter 0x4671, 0