Function at 0x41d0e0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x28
push ebx
push ebp
push esi
push edi
mov ebp, ecx
cmp dword [ebp + 0x20], 0
jne 0x41d868
test byte [ebp], 8
jne 0x41d868
mov edi, dword [ebp + 0x10]
xorps xmm0, xmm0
mov esi, dword [ebp + 0x4c]
mov eax, edi
mov ecx, dword [ebp + 0x14]
movlpd qword [esp + 0x30], xmm0
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ecx
test esi, esi
je 0x41d526
mov eax, dword [esp + 0x34]
mov dword [esp + 0x14], eax
mov edx, 0x2014b50
mov ecx, ebp
call fcn.0041d960
mov edx, 0x201
mov ecx, ebp
call fcn.0041d960
mov edx, 0xb2d
mov ecx, ebp
call fcn.0041d960
mov edx, 0x2d
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi]
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 2]
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 4]
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 6]
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 8]
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0xa]
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x14], 0
mov edx, dword [esi + 0x10]
ja 0x41d1c3
cmp edx, 0xffffffff
jae 0x41d1c3
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
shrd edx, eax, 0x10
jmp 0x41d1d0
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x1c], 0
mov edx, dword [esi + 0x18]
ja 0x41d1f8
cmp edx, 0xffffffff
jae 0x41d1f8
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x18]
mov eax, dword [esi + 0x1c]
shrd edx, eax, 0x10
jmp 0x41d205
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x20]
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x38]
test edx, edx
ja 0x41d247
jb 0x41d227
cmp ecx, 0xffffffff
jae 0x41d247
cmp dword [esi + 0x1c], 0
ja 0x41d247
jb 0x41d235
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d247
cmp dword [esi + 0x14], 0
ja 0x41d247
jb 0x41d243
cmp dword [esi + 0x10], 0xffffffff
jae 0x41d247
xor eax, eax
jmp 0x41d25a
mov eax, 4
test edx, edx
jne 0x41d255
cmp ecx, 0xffffffff
jb 0x41d25a
mov eax, 0xc
cmp dword [esi + 0x14], 0
ja 0x41d26a
cmp dword [esi + 0x10], 0xffffffff
jae 0x41d26a
xor edi, edi
jmp 0x41d26f
mov edi, 8
cmp dword [esi + 0x1c], 0
ja 0x41d27f
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d27f
xor ecx, ecx
jmp 0x41d284
mov ecx, 8
lea edx, [eax + ecx]
mov ecx, ebp
add edx, edi
add edx, dword [esi + 0x28]
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x2c]
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x2e]
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x34]
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x36]
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x3c], 0
mov edx, dword [esi + 0x38]
ja 0x41d2e8
cmp edx, 0xffffffff
jae 0x41d2e8
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x38]
mov eax, dword [esi + 0x3c]
shrd edx, eax, 0x10
jmp 0x41d2f5
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
push dword [esi + 0x20]
lea edx, [esi + 0x48]
mov ecx, ebp
call fcn.0041dad0
add esp, 4
cmp dword [esi + 0x3c], 0
ja 0x41d338
jb 0x41d31a
cmp dword [esi + 0x38], 0xffffffff
jae 0x41d338
cmp dword [esi + 0x1c], 0
ja 0x41d338
jb 0x41d328
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d338
cmp dword [esi + 0x14], 0
ja 0x41d338
cmp dword [esi + 0x10], 0xffffffff
jb 0x41d464
mov edx, 1
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x3c], 0
ja 0x41d354
cmp dword [esi + 0x38], 0xffffffff
jae 0x41d354
xor edi, edi
jmp 0x41d359
mov edi, 8
cmp dword [esi + 0x14], 0
ja 0x41d369
cmp dword [esi + 0x10], 0xffffffff
jae 0x41d369
xor ecx, ecx
jmp 0x41d36e
mov ecx, 8
cmp dword [esi + 0x1c], 0
ja 0x41d37e
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d37e
xor eax, eax
jmp 0x41d383
mov eax, 8
lea edx, [eax + ecx]
mov ecx, ebp
add edx, edi
call fcn.0041d960
cmp dword [esi + 0x1c], 0
mov edx, dword [esi + 0x18]
ja 0x41d39d
cmp edx, 0xffffffff
jb 0x41d3d6
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x18]
mov ecx, ebp
mov eax, dword [esi + 0x1c]
shrd edx, eax, 0x10
call fcn.0041d960
mov eax, dword [esi + 0x18]
mov cl, 0x20
mov edx, dword [esi + 0x1c]
call fcn.004bdb50
mov edx, eax
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x1e]
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x14], 0
mov edx, dword [esi + 0x10]
ja 0x41d3e4
cmp edx, 0xffffffff
jb 0x41d41d
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x10]
mov ecx, ebp
mov eax, dword [esi + 0x14]
shrd edx, eax, 0x10
call fcn.0041d960
mov eax, dword [esi + 0x10]
mov cl, 0x20
mov edx, dword [esi + 0x14]
call fcn.004bdb50
mov edx, eax
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x16]
mov ecx, ebp
call fcn.0041d960
cmp dword [esi + 0x3c], 0
mov edx, dword [esi + 0x38]
ja 0x41d42b
cmp edx, 0xffffffff
jb 0x41d464
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esi + 0x38]
mov ecx, ebp
mov eax, dword [esi + 0x3c]
shrd edx, eax, 0x10
call fcn.0041d960
mov eax, dword [esi + 0x38]
mov cl, 0x20
mov edx, dword [esi + 0x3c]
call fcn.004bdb50
mov edx, eax
mov ecx, ebp
call fcn.0041d960
movzx edx, word [esi + 0x3e]
mov ecx, ebp
call fcn.0041d960
mov eax, dword [esi + 0x28]
test eax, eax
je 0x41d479
mov edx, dword [esi + 0x44]
mov ecx, ebp
push eax
call fcn.0041dad0
add esp, 4
mov edx, dword [esi + 0x3c]
mov eax, dword [esi + 0x38]
test edx, edx
ja 0x41d4ad
jb 0x41d48a
cmp eax, 0xffffffff
jae 0x41d4ad
cmp dword [esi + 0x1c], 0
ja 0x41d4ad
jb 0x41d498
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d4ad
cmp dword [esi + 0x14], 0
ja 0x41d4ad
jb 0x41d4a6
cmp dword [esi + 0x10], 0xffffffff
jae 0x41d4ad
mov ecx, 0x2e
jmp 0x41d4c0
mov ecx, 0x32
test edx, edx
jne 0x41d4bb
cmp eax, 0xffffffff
jb 0x41d4c0
mov ecx, 0x3a
cmp dword [esi + 0x14], 0
ja 0x41d4d0
cmp dword [esi + 0x10], 0xffffffff
jae 0x41d4d0
xor edx, edx
jmp 0x41d4d5
mov edx, 8
cmp dword [esi + 0x1c], 0
ja 0x41d4e5
cmp dword [esi + 0x18], 0xffffffff
jae 0x41d4e5
xor eax, eax
jmp 0x41d4ea
mov eax, 8
add eax, edx
add eax, ecx
add eax, dword [esi + 0x28]
add eax, dword [esi + 0x20]
add dword [ebp + 0x10], eax
push esi
adc dword [ebp + 0x14], 0
add ebx, 1
mov edi, dword [esi + 0x14c]
adc dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov esi, edi
test edi, edi
jne 0x41d133
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
mov edi, dword [esp + 0x20]
jmp 0x41d52e
mov edx, dword [esp + 0x34]
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ebx
test ecx, ecx
jne 0x41d5af
cmp eax, 0xffffffff
jae 0x41d5af
mov edx, 0x6054b50
mov ecx, ebp
call fcn.0041d960
mov edx, 0x605
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
mov edx, ebx
mov ecx, ebp
call fcn.0041d960
mov edx, ebx
mov ecx, ebp
call fcn.0041d960
mov esi, dword [ebp + 0x10]
mov ecx, ebp
sub esi, edi
mov edx, esi
call fcn.0041d960
shr esi, 0x10
mov ecx, ebp
mov edx, esi
call fcn.0041d960
add edi, dword [ebp + 0x18]
mov ecx, ebp
mov ebx, dword [esp + 0x24]
mov edx, edi
adc ebx, 0
call fcn.0041d960
shrd edi, ebx, 0x10
mov edx, edi
jmp 0x41d84c
add eax, dword [ebp + 0x18]
mov edx, 0x6064b50
mov ebx, dword [ebp + 0x1c]
adc ebx, ecx
mov dword [esp + 0x28], eax
mov ecx, ebp
call fcn.0041d960
mov edx, 0x606
mov ecx, ebp
call fcn.0041d960
mov edx, 0x2c
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
mov edx, 0xb2d
mov ecx, ebp
call fcn.0041d960
mov edx, 0x2d
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esp + 0x18]
mov ecx, ebp
call fcn.0041d960
mov esi, dword [esp + 0x14]
mov ecx, ebp
mov edi, dword [esp + 0x18]
mov eax, esi
shrd edi, eax, 0x10
mov edx, edi
call fcn.0041d960
mov edx, esi
mov ecx, ebp
call fcn.0041d960
shr esi, 0x10
mov ecx, ebp
mov edx, esi
call fcn.0041d960
mov edx, dword [esp + 0x18]
mov ecx, ebp
call fcn.0041d960
mov edx, edi
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esp + 0x14]
mov ecx, ebp
call fcn.0041d960
mov edx, esi
mov ecx, ebp
call fcn.0041d960
mov esi, dword [ebp + 0x10]
mov ecx, ebp
mov edi, dword [esp + 0x20]
sub esi, edi
mov eax, dword [ebp + 0x14]
mov edx, esi
sbb eax, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
call fcn.0041d960
mov eax, dword [esp + 0x1c]
mov ecx, esi
shrd ecx, eax, 0x10
mov dword [esp + 0x2c], ecx
mov edx, ecx
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esp + 0x1c]
mov ecx, ebp
call fcn.0041d960
mov edx, dword [esp + 0x1c]
mov ecx, ebp
shr edx, 0x10
call fcn.0041d960
add edi, dword [ebp + 0x18]
mov ecx, ebp
mov eax, dword [ebp + 0x1c]
mov edx, edi
adc eax, dword [esp + 0x24]
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], eax
call fcn.0041d960
mov ecx, edi
mov edi, dword [esp + 0x24]
mov eax, edi
shrd ecx, eax, 0x10
mov dword [esp + 0x30], ecx
mov edx, ecx
mov ecx, ebp
call fcn.0041d960
mov edx, edi
mov ecx, ebp
call fcn.0041d960
mov edx, edi
mov ecx, ebp
shr edx, 0x10
call fcn.0041d960
add dword [ebp + 0x10], 0x38
mov edx, 0x7064b50
mov ecx, ebp
adc dword [ebp + 0x14], 0
call fcn.0041d960
mov edx, 0x706
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
mov edi, dword [esp + 0x28]
mov ecx, ebp
mov edx, edi
call fcn.0041d960
mov eax, ebx
mov ecx, ebp
shrd edi, eax, 0x10
mov edx, edi
call fcn.0041d960
mov edx, ebx
mov ecx, ebp
call fcn.0041d960
shr ebx, 0x10
mov ecx, ebp
mov edx, ebx
call fcn.0041d960
mov edx, 1
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
add dword [ebp + 0x10], 0x14
mov edx, 0x6054b50
mov ecx, ebp
adc dword [ebp + 0x14], 0
call fcn.0041d960
mov edx, 0x605
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
cmp dword [esp + 0x14], 0
ja 0x41d7e8
mov ebx, dword [esp + 0x18]
cmp ebx, 0xff
jb 0x41d7eb
or ebx, 0xffffffff
mov edx, ebx
mov ecx, ebp
call fcn.0041d960
mov edx, ebx
mov ecx, ebp
call fcn.0041d960
cmp dword [esp + 0x1c], 0
ja 0x41d80f
cmp esi, 0xffffffff
jae 0x41d80f
mov edi, dword [esp + 0x2c]
jmp 0x41d815
or edi, 0xffffffff
or esi, 0xffffffff
mov edx, esi
mov ecx, ebp
call fcn.0041d960
mov edx, edi
mov ecx, ebp
call fcn.0041d960
cmp dword [esp + 0x24], 0
ja 0x41d83d
mov edx, dword [esp + 0x20]
cmp edx, 0xffffffff
jae 0x41d83d
mov esi, dword [esp + 0x30]
jmp 0x41d843
or esi, 0xffffffff
or edx, 0xffffffff
mov ecx, ebp
call fcn.0041d960
mov edx, esi
mov ecx, ebp
call fcn.0041d960
xor edx, edx
mov ecx, ebp
call fcn.0041d960
add dword [ebp + 0x10], 0x16
adc dword [ebp + 0x14], 0
or dword [ebp], 8
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret