Function at 0x4c8dc0
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x69cb7b
push eax
mov eax, dword [0x84716c]
mov dword fs:[0], esp
sub esp, 0x20
push ebp
xor ebp, ebp
cmp eax, ebp
push edi
mov edi, ecx
jne 0x4c92bd
push esi
push 0x3dc
call fcn.005b8072
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0x34], ebp
je 0x4c8e10
mov ecx, eax
call fcn.00414a90
mov esi, eax
jmp 0x4c8e12
xor esi, esi
cmp esi, ebp
mov dword [esp + 0x34], 0xffffffff
je 0x4c92bc
push ebx
mov ebx, 2
mov dword [esi + 0x17c], ebx
mov eax, dword [edi + 0x108c]
mov dword [esi + 0x34], eax
mov byte [esi + 0x25c], 1
mov cl, byte [edi + 0x19972da]
mov byte [esi + 0x276], cl
mov dl, byte [edi + 0x23b5]
mov byte [esi + 0x277], dl
mov al, byte [edi + 0x23b7]
mov byte [esi + 0x174], al
mov cl, byte [edi + 0x23b8]
mov byte [esi + 0x175], cl
mov dl, byte [edi + 0x23b9]
mov byte [esi + 0x176], dl
mov al, byte [edi + 0x33bc]
mov byte [esi + 0x177], al
mov cl, byte [edi + 0x23ba]
mov byte [esi + 0x178], cl
mov dl, byte [edi + 0x23b6]
mov byte [esi + 0x278], dl
mov eax, dword [edi + 0x1997900]
mov dword [esi + 0x2ec], eax
lea ecx, [edi + 0x33c4]
mov eax, dword [ecx]
lea edx, [esi + 0x180]
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov cl, byte [ecx + 0xc]
mov byte [edx + 0xc], cl
lea edx, [edi + 0x33d1]
mov ecx, dword [edx]
lea eax, [esi + 0x18d]
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
mov dl, byte [edx + 0xc]
mov byte [eax + 0xc], dl
lea eax, [edi + 0x1998537]
mov edx, dword [eax]
lea ecx, [esi + 0x384]
mov dword [ecx], edx
mov ax, word [eax + 4]
mov word [ecx + 4], ax
mov eax, 0x8508ae
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4c8f10
sub eax, edx
cmp eax, 0x14
jne 0x4c8f4d
mov al, byte [0x8508c0]
cmp al, 0x30
jl 0x4c8f4d
cmp al, 0x39
jg 0x4c8f4d
mov cl, byte [0x8508c1]
cmp cl, 0x30
jl 0x4c8f4d
cmp cl, 0x39
jg 0x4c8f4d
movsx eax, al
lea edx, [eax + eax*4]
movsx eax, cl
lea eax, [eax + edx*2 - 0x210]
jmp 0x4c8f4f
xor eax, eax
mov ecx, esi
mov byte [esi + 0x19f], al
call fcn.00414fe0
mov ecx, dword [0x8507e4]
mov dword [esi + 0x10], ecx
mov edx, dword [0x8507e8]
mov dword [esi + 0x14], edx
mov eax, dword [0x8507ec]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
lea ecx, [esi + 0x148]
mov dword [ecx], edx
mov edx, dword [esi + 0x18]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
movzx eax, word [0x8507f0]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x18]
fild dword [esp + 0x14]
push ecx
mov edx, ecx
push edx
fmul dword [0x6aa4f0]
mov dword [esp + 0x24], 0
fld st(0)
fcos
fstp dword [esp + 0x18]
fsin
fld dword [0x6a75fc]
fmul st(1)
fadd dword [esp + 0x18]
fld dword [esp + 0x18]
fmul dword [0x6a75fc]
fsub st(2)
fstp dword [esp + 0x20]
fstp dword [esp + 0x28]
fstp st(0)
call fcn.005cf7eb
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], ecx
lea edx, [esi + 0x1c]
mov dword [edx], eax
mov dword [esp + 0x28], 0
mov ecx, dword [esp + 0x28]
mov dword [edx + 4], ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x2c]
mov dword [edx + 8], eax
lea eax, [edi + 0x33de]
mov ecx, esi
sub ecx, eax
lea edx, [ecx + 0xf0]
mov edi, edi
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x4c9020
cmp dword [edi + 0x1997e7c], ebp
je 0x4c907f
mov eax, dword [esi + 0x2c4]
cmp eax, ebp
je 0x4c904b
push eax
call fcn.005b89dd
add esp, 4
mov dword [esi + 0x2c4], ebp
mov eax, dword [edi + 0x1997e7c]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4c9054
sub eax, edx
inc eax
push eax
call fcn.005b951f
mov dword [esi + 0x2c4], eax
mov ecx, dword [edi + 0x1997e7c]
add esp, 4
mov edx, eax
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4c9075
movzx edx, word [edi + 0x33be]
mov dword [esi + 0x130], edx
movzx eax, word [edi + 0x33c0]
mov dword [esi + 0x138], eax
movzx ecx, word [edi + 0x33c2]
mov dword [esi + 0x140], ecx
movzx edx, word [edi + 0x14]
mov dword [esi + 0x134], edx
movzx eax, word [edi + 0x16]
mov dword [esi + 0x13c], eax
movzx ecx, word [edi + 0x18]
mov dword [esi + 0x144], ecx
mov ecx, dword [esi + 0x130]
mov eax, edx
cmp eax, ecx
jge 0x4c90d6
mov dword [esi + 0x130], eax
mov eax, dword [esi + 0x13c]
cmp eax, dword [esi + 0x138]
jge 0x4c90ea
mov dword [esi + 0x138], eax
mov eax, dword [esi + 0x144]
cmp eax, dword [esi + 0x140]
jge 0x4c90fe
mov dword [esi + 0x140], eax
mov dl, byte [edi + 0x19972d8]
mov byte [esi + 0x274], dl
mov al, byte [edi + 0x19972d9]
mov byte [esi + 0x275], al
cmp dword [edi + 4], ebp
je 0x4c9122
mov byte [esi + 0x28c], 1
mov dword [0x84716c], esi
mov al, byte [edi + 0x199b0a4]
test al, al
je 0x4c9136
cmp al, 1
jne 0x4c9145
movzx ecx, al
mov dword [esi + 0x168], ecx
mov byte [edi + 0x199b0a4], bl
push esi
mov ecx, 0x7072a0
call fcn.0044d4e0
mov ecx, dword [0x21e6924]
mov eax, dword [ecx]
cmp eax, ecx
mov dword [0x21e692c], eax
je 0x4c91d5
mov ebx, 0x58
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4c91be
xor ecx, ecx
mov cl, byte [eax + 6]
cmp cl, 0x64
je 0x4c91be
xor edx, edx
mov dx, word [eax + 4]
push ecx
lea ecx, [edi + 0x7864]
push edx
call fcn.00460190
mov ebp, eax
test ebp, ebp
je 0x4c91be
cmp word [ebp + 0x1e], 0x5a
jne 0x4c91ab
mov ecx, dword [esi + 0x34]
xor eax, eax
mov al, byte [ebp + 0x80]
push eax
push ecx
mov ecx, edi
call fcn.004c1100
cmp word [ebp + 0x1e], bx
jne 0x4c91be
mov edx, dword [esi + 0x34]
push 0xd
push edx
mov ecx, edi
call fcn.004c1100
mov ecx, 0x21e692c
call fcn.0040b6a0
mov eax, dword [0x21e692c]
cmp eax, dword [0x21e6924]
jne 0x4c9166
mov eax, dword [edi + 0x19971bc]
mov ecx, dword [eax]
cmp ecx, eax
lea esi, [edi + 0x19971c4]
mov dword [esp + 0x10], 0
mov dword [esi], ecx
je 0x4c923d
mov bl, 0x2e
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4c9224
xor ecx, ecx
mov cl, byte [eax + 6]
xor edx, edx
mov dx, word [eax + 4]
push ecx
mov ecx, 0x856fcc
push edx
call fcn.00460190
test eax, eax
je 0x4c9224
cmp byte [eax + 0x64], bl
jne 0x4c9224
mov dword [esp + 0x10], 1
mov ecx, esi
call fcn.0040b6a0
mov eax, dword [esi]
cmp eax, dword [edi + 0x19971bc]
jne 0x4c91f3
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x4c9286
lea ebx, [edi + 0x7864]
lea esi, [edi + 0x13c1]
mov dword [esp + 0x14], 5
mov ebp, 0x18
xor ecx, ecx
mov cl, byte [esi + 1]
xor edx, edx
mov dl, byte [esi]
push ecx
mov ecx, ebx
push edx
call fcn.0045f2c0
test eax, eax
je 0x4c927a
cmp byte [eax + 0x2a], 0x25
jne 0x4c927a
mov dword [esp + 0x10], 1
add esi, 0x22
dec ebp
jne 0x4c9256
dec dword [esp + 0x14]
jne 0x4c9251
mov ecx, dword [0x7034d4]
test ecx, ecx
pop ebx
je 0x4c92bc
mov eax, dword [ecx]
push 8
call dword [eax + 4]
test al, al
je 0x4c92bc
cmp byte [edi + 0x23b6], 3
jne 0x4c92bc
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4c92bc
push 0x346
push 8
call fcn.0041d9a0
add esp, 8
pop esi
mov ecx, dword [esp + 0x28]
pop edi
pop ebp
mov dword fs:[0], ecx
add esp, 0x2c
ret