Function at 0x461230
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x60
mov ebx, ecx
movzx edx, byte [ecx]
mov ecx, edx
shr ecx, 1
mov eax, dword [ebx]
mov dword [esp + 0x24], eax
and eax, 0xfffffffe
add eax, 0xffffffff
mov dword [esp + 0x20], edx
test dl, 1
mov edx, 0xa
cmovne edx, eax
mov dword [esp + 0x1c], edx
cmovne ecx, dword [ebx + 4]
mov dword [esp + 8], ecx
mov dword [esp + 0x40], 0x494b80
mov dword [esp + 0x44], 0x58b2a0
mov dword [esp + 0x48], ebp
mov dword [esp + 0x50], esp
mov dword [esp + 0x4c], 0x4615c1
mov edi, dword [ebp + 8]
mov esi, ebx
lea eax, [esp + 0x28]
push eax
call fcn.00495b60
add esp, 4
mov edx, dword [ebp + 0xc]
sub edx, edi
je 0x461597
add ebx, 1
test byte [esp + 0x20], 1
mov ecx, dword [esi + 8]
mov eax, ecx
cmove eax, ebx
cmp eax, edi
mov dword [esp + 4], esi
ja 0x46130f
add eax, dword [esp + 8]
cmp eax, edi
jbe 0x46130f
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
cmp edx, 0xfffffff0
jae 0x4615b0
cmp edx, 0xa
ja 0x461478
mov ebx, esi
mov eax, edx
add al, dl
mov byte [esp + 0x10], al
lea esi, [esp + 0x11]
cmp edi, dword [ebp + 0xc]
jne 0x4614ad
jmp 0x4614bc
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 8]
sub eax, esi
cmp eax, edx
mov dword [esp + 0xc], edx
jae 0x46134e
lea eax, [esi + edx]
mov edx, dword [esp + 0x1c]
sub eax, edx
mov dword [esp + 0x2c], 0xffffffff
mov ecx, dword [esp + 4]
push 0
push 0
push esi
push esi
push eax
push edx
call fcn.0041e300
mov ecx, dword [esp + 4]
mov al, byte [ecx]
mov ecx, dword [ecx + 8]
jmp 0x461352
mov eax, dword [esp + 0x24]
test al, 1
cmove ecx, ebx
lea eax, [ecx + esi]
cmp edi, dword [ebp + 0xc]
mov ebx, esi
je 0x461505
mov edx, dword [esp + 0xc]
cmp edx, 0x20
mov esi, dword [esp + 4]
jb 0x46150d
mov edx, dword [ebp + 0xc]
cmp eax, edx
jae 0x46138b
add edx, ebx
sub edx, edi
add edx, ecx
cmp edx, edi
ja 0x46150d
mov edx, dword [esp + 0xc]
and edx, 0xffffffe0
mov dword [esp + 0x20], edx
lea esi, [edx - 0x20]
mov ebx, esi
shr ebx, 5
add ebx, 1
mov edx, ebx
and edx, 3
mov dword [esp + 0x1c], edx
xor edx, edx
cmp esi, 0x60
jb 0x461416
and ebx, 0xfffffffc
mov edx, dword [esp + 8]
lea esi, [edx + ecx]
add esi, 0x70
xor edx, edx
movups xmm0, xmmword [edi + edx]
movups xmm1, xmmword [edi + edx + 0x10]
movups xmmword [esi + edx - 0x70], xmm0
movups xmmword [esi + edx - 0x60], xmm1
movups xmm0, xmmword [edi + edx + 0x20]
movups xmm1, xmmword [edi + edx + 0x30]
movups xmmword [esi + edx - 0x50], xmm0
movups xmmword [esi + edx - 0x40], xmm1
movups xmm0, xmmword [edi + edx + 0x40]
movups xmm1, xmmword [edi + edx + 0x50]
movups xmmword [esi + edx - 0x30], xmm0
movups xmmword [esi + edx - 0x20], xmm1
movups xmm0, xmmword [edi + edx + 0x60]
movups xmm1, xmmword [edi + edx + 0x70]
movups xmmword [esi + edx - 0x10], xmm0
movups xmmword [esi + edx], xmm1
sub edx, 0xffffff80
add ebx, 0xfffffffc
jne 0x4613c0
mov ebx, dword [esp + 0x1c]
test ebx, ebx
je 0x461459
lea esi, [edx + edi]
add esi, 0x10
add edx, dword [esp + 8]
add ecx, edx
add ecx, 0x10
shl ebx, 5
xor edx, edx
nop word cs:[eax + eax]
nop dword [eax]
movups xmm0, xmmword [esi + edx - 0x10]
movups xmm1, xmmword [esi + edx]
movups xmmword [ecx + edx - 0x10], xmm0
movups xmmword [ecx + edx], xmm1
add edx, 0x20
cmp ebx, edx
jne 0x461440
mov ecx, dword [esp + 0x20]
add eax, ecx
mov edx, dword [esp + 0xc]
cmp edx, ecx
mov esi, dword [esp + 4]
jne 0x46150b
mov ebx, dword [esp + 8]
jmp 0x461584
lea ebx, [edx + 0x10]
and ebx, 0xfffffff0
mov dword [esp + 0x2c], 0xffffffff
push ebx
mov esi, edx
call fcn.0041a1e0
mov edx, esi
add esp, 4
mov esi, eax
mov dword [esp + 0x18], eax
or ebx, 1
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 4]
mov dword [esp + 0x14], edx
cmp edi, dword [ebp + 0xc]
je 0x4614bc
push edx
push edi
push esi
mov edi, edx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
add esi, edi
mov byte [esi], 0
movzx eax, byte [esp + 0x10]
test al, 1
je 0x4614d2
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
jmp 0x4614d8
shr eax, 1
lea edx, [esp + 0x11]
mov ecx, ebx
mov dword [esp + 0x2c], 1
push eax
push edx
call fcn.0041e090
test byte [esp + 0x10], 1
je 0x4614fc
push dword [esp + 0x18]
call fcn.0041a380
add esp, 4
mov esi, dword [esp + 4]
jmp 0x461597
mov edx, dword [esp + 0xc]
jmp 0x461580
add edi, ecx
mov ebx, dword [ebp + 0xc]
mov edx, ebx
sub edx, edi
mov ecx, edi
not ecx
add ecx, ebx
and edx, 7
je 0x461530
nop
movzx ebx, byte [edi]
mov byte [eax], bl
add eax, 1
add edi, 1
add edx, 0xffffffff
jne 0x461520
cmp ecx, 7
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 8]
jb 0x461584
mov esi, dword [ebp + 0xc]
movzx ecx, byte [edi]
mov byte [eax], cl
movzx ecx, byte [edi + 1]
mov byte [eax + 1], cl
movzx ecx, byte [edi + 2]
mov byte [eax + 2], cl
movzx ecx, byte [edi + 3]
mov byte [eax + 3], cl
movzx ecx, byte [edi + 4]
mov byte [eax + 4], cl
movzx ecx, byte [edi + 5]
mov byte [eax + 5], cl
movzx ecx, byte [edi + 6]
mov byte [eax + 6], cl
movzx ecx, byte [edi + 7]
mov byte [eax + 7], cl
add eax, 8
add edi, 8
cmp edi, esi
jne 0x461540
mov esi, dword [esp + 4]
mov byte [eax], 0
add ebx, edx
test byte [esi], 1
jne 0x461594
add bl, bl
mov byte [esi], bl
jmp 0x461597
mov dword [esi + 4], ebx
lea eax, [esp + 0x28]
push eax
call fcn.00495bc0
add esp, 4
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov dword [esp + 0x2c], 0xffffffff
lea ecx, [esp + 0x10]
call fcn.0041d590
mov eax, dword [esp + 0x2c]
cmp eax, 1
jb switch.0x004615ce
ud2
jmp dword [eax*4 + 0x4615fc]
mov esi, dword [esp + 0x30]
test byte [esp + 0x10], 1
je 0x4615ec
push dword [esp + 0x18]
call fcn.0041a380
add esp, 4
mov dword [esp + 0x2c], 0xffffffff
push esi
call fcn.00495e60
nop
aad 0x15
inc esi
add byte [ebp - 0x77], dl
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x60
mov esi, ecx
movzx edx, byte [ecx]
mov ecx, edx
shr ecx, 1
mov eax, dword [esi]
mov dword [esp + 0x24], eax
and eax, 0xfffffffe
add eax, 0xffffffff
mov dword [esp + 0xc], edx
test dl, 1
mov edx, 4
cmovne edx, eax
mov dword [esp + 0x20], edx
cmovne ecx, dword [esi + 4]
mov dword [esp + 4], ecx
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
sub ebx, edi
mov dword [esp + 0x40], 0x494b80
mov dword [esp + 0x44], 0x58b2a8
mov dword [esp + 0x48], ebp
mov dword [esp + 0x50], esp
mov dword [esp + 0x4c], 0x461972
mov dword [esp], esi
lea eax, [esp + 0x28]
push eax
call fcn.00495b60
add esp, 4
test ebx, ebx
je 0x461947
mov dword [esp + 8], ebx
sar ebx, 1
mov dword [esp + 0x1c], ebx
add esi, 2
test byte [esp + 0xc], 1
mov eax, dword [esp]
mov ecx, dword [eax + 8]
mov eax, ecx
mov dword [esp + 0xc], esi
cmove eax, esi
cmp eax, edi
mov edx, dword [esp + 4]
ja 0x4616f5
lea eax, [eax + edx*2]
cmp eax, edi
jbe 0x4616f5
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 8]
test ecx, ecx
js 0x461961
cmp ecx, 9
mov eax, dword [esp + 0x1c]
ja 0x461876
add al, al
mov byte [esp + 0x10], al
lea esi, [esp + 0x12]
cmp edi, dword [ebp + 0xc]
jne 0x4618ae
jmp 0x4618c7
mov ebx, dword [esp + 0x20]
mov eax, ebx
sub eax, edx
mov esi, dword [esp + 0x1c]
cmp eax, esi
mov eax, esi
mov esi, dword [ebp + 0xc]
jae 0x461733
add eax, edx
sub eax, ebx
mov dword [esp + 0x2c], 0xffffffff
mov ecx, dword [esp]
push 0
push 0
push edx
push edx
push eax
push ebx
mov ebx, ecx
call fcn.00420780
mov edx, dword [esp + 4]
mov al, byte [ebx]
mov ecx, dword [ebx + 8]
jmp 0x46173a
mov eax, dword [esp + 0x24]
mov ebx, dword [esp]
test al, 1
cmove ecx, dword [esp + 0xc]
lea eax, [ecx + edx*2]
cmp edi, esi
je 0x461930
mov ebx, dword [esp + 8]
add ebx, 0xfffffffe
cmp ebx, 0x1e
jb 0x461916
shr ebx, 1
lea edx, [edi + ebx*2]
add edx, 2
cmp eax, edx
jae 0x46177c
mov edx, dword [esp + 4]
add edx, ebx
lea edx, [ecx + edx*2]
add edx, 2
cmp edx, edi
ja 0x461912
add ebx, 1
mov dword [esp + 8], ebx
and ebx, 0xfffffff0
mov dword [esp + 0xc], ebx
lea esi, [ebx - 0x10]
mov ebx, esi
shr ebx, 4
add ebx, 1
mov edx, ebx
and edx, 3
mov dword [esp + 0x20], edx
xor edx, edx
cmp esi, 0x30
jb 0x461816
and ebx, 0xfffffffc
mov edx, dword [esp + 4]
lea esi, [ecx + edx*2]
add esi, 0x70
xor edx, edx
nop word cs:[eax + eax]
nop
movups xmm0, xmmword [edi + edx*2]
movups xmm1, xmmword [edi + edx*2 + 0x10]
movups xmmword [esi + edx*2 - 0x70], xmm0
movups xmmword [esi + edx*2 - 0x60], xmm1
movups xmm0, xmmword [edi + edx*2 + 0x20]
movups xmm1, xmmword [edi + edx*2 + 0x30]
movups xmmword [esi + edx*2 - 0x50], xmm0
movups xmmword [esi + edx*2 - 0x40], xmm1
movups xmm0, xmmword [edi + edx*2 + 0x40]
movups xmm1, xmmword [edi + edx*2 + 0x50]
movups xmmword [esi + edx*2 - 0x30], xmm0
movups xmmword [esi + edx*2 - 0x20], xmm1
movups xmm0, xmmword [edi + edx*2 + 0x60]
movups xmm1, xmmword [edi + edx*2 + 0x70]
movups xmmword [esi + edx*2 - 0x10], xmm0
movups xmmword [esi + edx*2], xmm1
add edx, 0x40
add ebx, 0xfffffffc
jne 0x4617c0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x461859
lea esi, [edi + edx*2]
add esi, 0x10
add edx, dword [esp + 4]
lea ecx, [ecx + edx*2]
add ecx, 0x10
shl ebx, 5
xor edx, edx
nop word cs:[eax + eax]
nop dword [eax]
movups xmm0, xmmword [esi + edx - 0x10]
movups xmm1, xmmword [esi + edx]
movups xmmword [ecx + edx - 0x10], xmm0
movups xmmword [ecx + edx], xmm1
add edx, 0x20
cmp ebx, edx
jne 0x461840
mov ecx, dword [esp + 0xc]
lea eax, [eax + ecx*2]
cmp dword [esp + 8], ecx
jne 0x46190c
mov edx, dword [esp + 4]
mov ebx, dword [esp]
jmp 0x461930
lea ebx, [eax + 8]
and ebx, 0xfffffff8
lea eax, [ebx + ebx]
mov dword [esp + 0x2c], 0xffffffff
push eax
call fcn.0041a1e0
mov ecx, dword [esp + 0xc]
add esp, 4
mov esi, eax
mov dword [esp + 0x18], eax
or ebx, 1
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
cmp edi, dword [ebp + 0xc]
je 0x4618c7
lea ebx, [ecx - 2]
and ebx, 0xfffffffe
and ecx, 0xfffffffe
push ecx
push edi
push esi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
add esi, ebx
add esi, 2
mov ecx, dword [esp]
mov word [esi], 0
movzx eax, byte [esp + 0x10]
test al, 1
je 0x4618e2
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
jmp 0x4618e8
shr eax, 1
lea edx, [esp + 0x12]
mov dword [esp + 0x2c], 1
push eax
push edx
call fcn.00420500
test byte [esp + 0x10], 1
je 0x461947
push dword [esp + 0x18]
call fcn.0041a380
add esp, 4
jmp 0x461947
lea edi, [edi + ecx*2]
mov esi, dword [ebp + 0xc]
mov edx, dword [esp + 4]
mov ebx, dword [esp]
nop dword [eax]
movzx ecx, word [edi]
mov word [eax], cx
add eax, 2
add edi, 2
cmp edi, esi
jne 0x461920
mov word [eax], 0
add edx, dword [esp + 0x1c]
test byte [ebx], 1
jne 0x461944
add dl, dl
mov byte [ebx], dl
jmp 0x461947
mov dword [ebx + 4], edx
lea eax, [esp + 0x28]
push eax
call fcn.00495bc0
add esp, 4
mov eax, dword [esp]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov dword [esp + 0x2c], 0xffffffff
lea ecx, [esp + 0x10]
call fcn.0041d590
mov eax, dword [esp + 0x2c]
cmp eax, 1
jb switch.0x0046197f
ud2
jmp dword [eax*4 + 0x4619ac]
mov esi, dword [esp + 0x30]
test byte [esp + 0x10], 1
je 0x46199d
push dword [esp + 0x18]
call fcn.0041a380
add esp, 4
mov dword [esp + 0x2c], 0xffffffff
push esi
call fcn.00495e60
nop
xchg byte [ecx], bl
inc esi
add byte [ebp - 0x77], dl
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x34
mov esi, ecx
mov bl, byte [ecx + 0x20c]
mov dword [ebp - 0x28], 0x494b80
mov dword [ebp - 0x24], 0x58b2b0
mov dword [ebp - 0x20], ebp
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0x461ce8
lea eax, [ebp - 0x40]
push eax
call fcn.00495b60
add esp, 4
test bl, 1
jne 0x461b31
test byte [esi + 0x200], 1
jne 0x461b4c
test byte [esi + 0x1f4], 1
jne 0x461b67
test byte [esi + 0x1e8], 1
jne 0x461b82
test byte [esi + 0x1dc], 1
jne 0x461b9d
test byte [esi + 0x1d0], 1
je 0x461a3c
push dword [esi + 0x1d8]
call fcn.0041a380
add esp, 4
mov edi, 0x1cc
jmp 0x461a5b
add edi, 0xfffffff4
cmp edi, 0xac
je 0x461a6f
test byte [esi + edi - 8], 1
je 0x461a50
push dword [esi + edi]
call fcn.0041a380
add esp, 4
jmp 0x461a50
test byte [esi + 0xa4], 1
jne 0x461bbd
test byte [esi + 0x98], 1
jne 0x461bd8
test byte [esi + 0x8c], 1
jne 0x461bf3
test byte [esi + 0x80], 1
jne 0x461c0e
test byte [esi + 0x74], 1
jne 0x461c26
test byte [esi + 0x68], 1
jne 0x461c3b
test byte [esi + 0x5c], 1
jne 0x461c50
test byte [esi + 0x50], 1
jne 0x461c65
test byte [esi + 0x44], 1
jne 0x461c7a
test byte [esi + 0x38], 1
jne 0x461c8f
test byte [esi + 0x2c], 1
jne 0x461ca4
test byte [esi + 0x20], 1
jne 0x461cb9
test byte [esi + 0x14], 1
jne 0x461cce
test byte [esi + 8], 1
je 0x461b0e
push dword [esi + 0x10]
call fcn.0041a380
add esp, 4
mov eax, dword [esi]
mov dword [ebp - 0x3c], 1
push eax
call sub.api_ms_win_crt_locale_l1_1_0.dll__free_locale
add esp, 4
lea eax, [ebp - 0x40]
push eax
call fcn.00495bc0
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
ret
push dword [esi + 0x214]
call fcn.0041a380
add esp, 4
test byte [esi + 0x200], 1
je 0x4619fe
push dword [esi + 0x208]
call fcn.0041a380
add esp, 4
test byte [esi + 0x1f4], 1
je 0x461a0b
push dword [esi + 0x1fc]
call fcn.0041a380
add esp, 4
test byte [esi + 0x1e8], 1
je 0x461a18
push dword [esi + 0x1f0]
call fcn.0041a380
add esp, 4
test byte [esi + 0x1dc], 1
je 0x461a25
push dword [esi + 0x1e4]
call fcn.0041a380
add esp, 4
test byte [esi + 0x1d0], 1
jne 0x461a2e
jmp 0x461a3c
push dword [esi + 0xac]
call fcn.0041a380
add esp, 4
test byte [esi + 0x98], 1
je 0x461a89
push dword [esi + 0xa0]
call fcn.0041a380
add esp, 4
test byte [esi + 0x8c], 1
je 0x461a96
push dword [esi + 0x94]
call fcn.0041a380
add esp, 4
test byte [esi + 0x80], 1
je 0x461aa3
push dword [esi + 0x88]
call fcn.0041a380
add esp, 4
test byte [esi + 0x74], 1
je 0x461aad
push dword [esi + 0x7c]
call fcn.0041a380
add esp, 4
test byte [esi + 0x68], 1
je 0x461ab7
push dword [esi + 0x70]
call fcn.0041a380
add esp, 4
test byte [esi + 0x5c], 1
je 0x461ac1
push dword [esi + 0x64]
call fcn.0041a380
add esp, 4
test byte [esi + 0x50], 1
je 0x461acb
push dword [esi + 0x58]
call fcn.0041a380
add esp, 4
test byte [esi + 0x44], 1
je 0x461ad5
push dword [esi + 0x4c]
call fcn.0041a380
add esp, 4
test byte [esi + 0x38], 1
je 0x461adf
push dword [esi + 0x40]
call fcn.0041a380
add esp, 4
test byte [esi + 0x2c], 1
je 0x461ae9
push dword [esi + 0x34]
call fcn.0041a380
add esp, 4
test byte [esi + 0x20], 1
je 0x461af3
push dword [esi + 0x28]
call fcn.0041a380
add esp, 4
test byte [esi + 0x14], 1
je 0x461afd
push dword [esi + 0x1c]
call fcn.0041a380
add esp, 4
test byte [esi + 8], 1
jne 0x461b03
jmp 0x461b0e