Function at 0x480880
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x4c
mov eax, dword [esp + 0x50]
push ebx
push ebp
mov ebp, ecx
mov eax, dword [eax + 0x8c]
push esi
movsx ecx, word [ebp + 0x6e]
mov edx, dword [eax + 0x60]
push edi
mov dword [esp + 0x10], ebp
mov ecx, dword [edx + ecx*4]
mov dword [esp + 0x58], ecx
mov ecx, dword [eax + 0x34]
mov al, byte [esp + 0x7c]
mov dword [esp + 0x24], ecx
test al, al
je 0x4808c0
mov edx, dword [ebp + 0x64]
mov eax, dword [ebp + 0x68]
mov dword [esp + 0x34], edx
jmp 0x4808ca
mov edx, dword [ebp + 0x34]
mov eax, dword [ebp + 0x38]
mov dword [esp + 0x34], edx
fld dword [esp + 0x64]
fsub dword [esp + 0x34]
mov dword [esp + 0x38], eax
fstp dword [esp + 0x7c]
fld dword [esp + 0x68]
fsub dword [esp + 0x38]
fstp dword [esp + 0x40]
fld dword [esp + 0x34]
fadd dword [esp + 0x64]
fsub dword [0x63b188]
fstp dword [esp + 0x44]
fld dword [esp + 0x38]
fadd dword [esp + 0x68]
fsub dword [0x63b188]
fstp dword [esp + 0x3c]
fld dword [esp + 0x7c]
fcomp dword [0x634594]
fnstsw ax
test ah, 1
jne 0x481144
mov edx, dword [ecx + 8]
mov dword [esp + 0x48], edx
fild dword [esp + 0x48]
fcomp dword [esp + 0x44]
fnstsw ax
test ah, 0x41
jne 0x481144
fld dword [esp + 0x40]
fcomp dword [0x634594]
fnstsw ax
test ah, 1
jne 0x481144
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x4c], eax
fild dword [esp + 0x4c]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 0x41
jne 0x481144
fld dword [esp + 0x7c]
call fcn.0061318c
fld dword [esp + 0x44]
mov ebx, eax
mov dword [esp + 0x28], ebx
call fcn.0061318c
fld dword [esp + 0x40]
mov edi, eax
mov dword [esp + 0x18], edi
call fcn.0061318c
fld dword [esp + 0x3c]
mov dword [esp + 0x40], eax
call fcn.0061318c
mov si, word [ebp + 0x60]
mov dword [esp + 0x1c], eax
test si, si
jge 0x4809c4
cmp word [ebp + 0x62], 0
jge 0x4809c4
mov ecx, dword [esp + 0x40]
mov edx, edi
mov dword [esp + 0x44], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], eax
jmp 0x480a1c
fld dword [esp + 0x68]
call fcn.0061318c
fld dword [esp + 0x64]
mov di, ax
call fcn.0061318c
mov ecx, dword [esp + 0x24]
movsx edx, di
mov ecx, dword [ecx + 0xa214]
movsx ebx, ax
mov edx, dword [ecx + edx*4]
shl ebx, 5
movzx cx, byte [edx + ebx + 5]
cmp cx, si
je 0x480a0c
cmp cx, word [ebp + 0x62]
je 0x480a0c
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x4c
ret 0x30
mov ebx, eax
mov dword [esp + 0x20], edi
mov edx, ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0x44], edx
mov ax, word [ebp + 0x5c]
mov byte [esp + 0x7c], 0
test ax, ax
mov dword [esp + 0x3c], eax
jge 0x480a3d
cmp word [ebp + 0x5e], 0
jl 0x480c66
mov ebp, dword [esp + 0x10]
or ecx, 0xffffffff
cmp ax, 0x23
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
je 0x480a55
cmp word [ebp + 0x5e], 0x23
jne 0x480a65
mov dword [esp + 0x2c], 0x1a
mov dword [esp + 0x30], 0x25
lea eax, [ebx - 1]
lea ecx, [edx + 1]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x54], ecx
lea ecx, [eax - 1]
test cx, cx
jl 0x480ae2
cmp bx, dx
jg 0x480ae2
mov esi, dword [esp + 0x24]
mov di, word [ebp + 0x5e]
movsx eax, bx
mov esi, dword [esi + 0xa214]
mov ebp, eax
movsx ecx, cx
shl ebp, 5
mov ecx, dword [esi + ecx*4]
lea esi, [ecx + ebp + 5]
movsx ecx, dx
sub ecx, eax
inc ecx
movzx ax, byte [esi]
cmp ax, word [esp + 0x3c]
jne 0x480aba
mov byte [esp + 0x7c], 1
cmp ax, di
jne 0x480ac4
mov byte [esp + 0x7c], 1
cmp ax, word [esp + 0x2c]
jne 0x480ad0
mov byte [esp + 0x7c], 1
cmp ax, word [esp + 0x30]
jne 0x480adc
mov byte [esp + 0x7c], 1
add esi, 0x20
dec ecx
jne 0x480aaa
movsx eax, word [esp + 0x54]
cmp eax, dword [esp + 0x48]
jge 0x480b5c
mov dx, word [esp + 0x14]
cmp word [esp + 0x20], dx
jg 0x480b5c
mov edx, dword [esp + 0x24]
shl eax, 5
movsx ecx, word [esp + 0x20]
mov ebp, eax
mov eax, dword [esp + 0x10]
mov di, word [eax + 0x5e]
mov eax, dword [edx + 0xa214]
movsx edx, word [esp + 0x14]
sub edx, ecx
lea esi, [eax + ecx*4]
inc edx
mov ecx, dword [esi]
movzx cx, byte [ecx + ebp + 5]
cmp cx, word [esp + 0x3c]
jne 0x480b34
mov byte [esp + 0x7c], 1
cmp cx, di
jne 0x480b3e
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x2c]
jne 0x480b4a
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x30]
jne 0x480b56
mov byte [esp + 0x7c], 1
add esi, 4
dec edx
jne 0x480b20
mov edx, dword [esp + 0x14]
lea eax, [edx + 1]
movsx ecx, ax
cmp ecx, dword [esp + 0x4c]
jge 0x480bd6
cmp word [esp + 0x44], bx
jl 0x480bd6
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
mov bp, word [eax + 0x5e]
mov edx, dword [edx + 0xa214]
movsx eax, word [esp + 0x44]
mov ecx, dword [edx + ecx*4]
mov esi, eax
shl esi, 5
lea edx, [ecx + esi + 5]
movsx ecx, bx
sub eax, ecx
inc eax
mov esi, eax
movzx cx, byte [edx]
cmp cx, word [esp + 0x3c]
jne 0x480bae
mov byte [esp + 0x7c], 1
cmp cx, bp
jne 0x480bb8
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x2c]
jne 0x480bc4
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x30]
jne 0x480bd0
mov byte [esp + 0x7c], 1
sub edx, 0x20
dec esi
jne 0x480b9e
cmp word [esp + 0x50], 0
jl 0x480c52
mov dx, word [esp + 0x20]
cmp word [esp + 0x14], dx
jl 0x480c52
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
movsx edx, word [esp + 0x50]
mov bp, word [eax + 0x5e]
mov ecx, dword [ecx + 0xa214]
movsx eax, word [esp + 0x14]
shl edx, 5
lea esi, [ecx + eax*4]
movsx ecx, word [esp + 0x20]
sub eax, ecx
inc eax
mov edi, eax
mov eax, dword [esi]
movzx cx, byte [edx + eax + 5]
cmp cx, word [esp + 0x3c]
jne 0x480c2a
mov byte [esp + 0x7c], 1
cmp cx, bp
jne 0x480c34
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x2c]
jne 0x480c40
mov byte [esp + 0x7c], 1
cmp cx, word [esp + 0x30]
jne 0x480c4c
mov byte [esp + 0x7c], 1
sub esi, 4
dec edi
jne 0x480c16
mov al, byte [esp + 0x7c]
test al, al
jne 0x480c66
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x4c
ret 0x30
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
movsx edx, word [esp + 0x1c]
mov esi, dword [ebx + 0xa214]
mov byte [esp + 0x7c], 0
movsx eax, cx
mov edx, dword [esi + edx*4]
mov dword [esp + 0x14], ecx
shl eax, 5
movzx ax, byte [edx + eax + 6]
lea edx, [eax - 1]
inc eax
cmp cx, word [esp + 0x18]
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], eax
jg 0x480e11
mov edx, dword [esp + 0x40]
cmp dx, word [esp + 0x1c]
mov ebp, edx
jg 0x480e01
mov eax, dword [esp + 0x10]
mov ax, word [eax + 0x10]
cmp ax, 0x299
je 0x480cf4
cmp ax, 0x29a
je 0x480cf4
cmp ax, 0x2a1
je 0x480cd9
cmp ax, 0x2a2
jne 0x480d12
movsx esi, word [esp + 0x18]
movsx eax, cx
sub esi, eax
movsx eax, bp
movsx edx, dx
sub eax, edx
cmp esi, eax
je 0x480d12
jmp 0x480ded
movsx esi, bp
movsx eax, dx
sub esi, eax
movsx eax, word [esp + 0x28]
movsx ecx, cx
sub ecx, eax
cmp ecx, esi
jne 0x480ded
mov ecx, dword [esp + 0x14]
mov edx, dword [ebx + 0xa214]
movsx ecx, cx
movsx edi, bp
mov esi, ecx
mov eax, dword [edx + edi*4]
xor edx, edx
shl esi, 5
mov dl, byte [eax + esi + 5]
mov eax, dword [esp + 0x58]
fld dword [eax + edx*4]
fcomp dword [0x63b184]
fnstsw ax
test ah, 0x41
jne 0x480e2c
mov al, byte [esp + 0x70]
test al, al
je 0x480d75
mov edx, dword [0x6833d0]
cmp dword [edx + 0x1e0], 7
je 0x480d70
mov eax, dword [esp + 0x60]
push edi
push ecx
mov ecx, dword [eax + 0x88]
call fcn.005f6a90
test al, al
je 0x480d75
mov byte [esp + 0x7c], 1
mov al, byte [esp + 0x74]
test al, al
je 0x480ded
mov ecx, dword [ebx + 0xa214]
mov edx, dword [ecx + edi*4]
movzx cx, byte [edx + esi + 4]
lea eax, [edx + esi]
mov esi, dword [esp + 0x10]
movzx dx, byte [eax + 6]
xor eax, eax
mov al, byte [esi + 0x6c]
dec eax
je 0x480dd0
dec eax
je 0x480dc9
dec eax
jne 0x480ded
mov ax, word [esp + 0x28]
cmp word [esp + 0x14], ax
je 0x480db9
cmp bp, word [esp + 0x1c]
jne 0x480ded
cmp dx, word [esp + 0x54]
jl 0x480e38
cmp dx, word [esp + 0x50]
jg 0x480e38
jmp 0x480ded
test cx, cx
jne 0x480e38
jmp 0x480ded
test cx, cx
je 0x480ded
cmp cx, 5
je 0x480ded
cmp cx, 7
je 0x480ded
cmp cx, 6
je 0x480ded
cmp cx, 8
jne 0x480e38
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x40]
inc ebp
cmp bp, word [esp + 0x1c]
jle 0x480cb9
inc ecx
cmp cx, word [esp + 0x18]
mov dword [esp + 0x14], ecx
jle 0x480cac
cmp byte [esp + 0x70], 1
jne 0x480e44
mov al, byte [esp + 0x7c]
test al, al
jne 0x480e44
pop edi
pop esi
pop ebp
mov al, 5
pop ebx
add esp, 0x4c
ret 0x30
pop edi
pop esi
pop ebp
mov al, 2
pop ebx
add esp, 0x4c
ret 0x30
pop edi
pop esi
pop ebp
mov al, 3
pop ebx
add esp, 0x4c
ret 0x30
fld dword [esp + 0x34]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
je 0x480e72
fld dword [esp + 0x38]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
je 0x480e72
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x4c
ret 0x30
fld dword [esp + 0x64]
fsub dword [0x637be0]
call fcn.0061318c
fld dword [esp + 0x68]
fsub dword [0x637be0]
mov edi, eax
mov dword [esp + 0x28], edi
call fcn.0061318c
fld dword [esp + 0x64]
fadd dword [0x637be0]
mov esi, eax
call fcn.0061318c
fld dword [esp + 0x68]
fadd dword [0x637be0]
mov ebp, eax
mov dword [esp + 0x18], ebp
call fcn.0061318c
mov ecx, eax
test di, di
mov dword [esp + 0x1c], ecx
jge 0x480ecd
xor edi, edi
mov dword [esp + 0x28], edi
mov eax, dword [ebx + 8]
movsx edx, bp
cmp edx, eax
jl 0x480ee0
mov bp, ax
dec bp
mov dword [esp + 0x18], ebp
test si, si
jge 0x480ee7
xor esi, esi
mov edx, dword [ebx + 0xc]
movsx eax, cx
cmp eax, edx
jl 0x480efa
mov cx, dx
dec cx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x10]
cmp word [eax + 0x10], 0x3b
jne 0x480f0c
mov dword [eax + 0x3c], 0x3f800000
mov dl, byte [esp + 0x84]
test dl, dl
je 0x480e66
mov dl, byte [esp + 0x80]
test dl, dl
jne 0x480f3a
fld dword [eax + 0x3c]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
jne 0x480e66
cmp si, cx
mov dword [esp + 0x74], esi
jg 0x480e66
mov ecx, dword [ebx + 0xa214]
mov dword [esp + 0x58], ecx
movsx ecx, di
shl ecx, 5
mov dword [esp + 0x60], ecx
jmp 0x480f69
mov ecx, dword [esp + 0x60]
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x18]
movsx edx, word [esp + 0x74]
mov eax, dword [esp + 0x58]
mov dword [esp + 0x14], edi
mov eax, dword [eax + edx*4]
add eax, ecx
cmp di, bp
jg 0x48110b
add eax, 0xd
mov dword [esp + 0x7c], eax
mov ecx, eax
mov al, byte [ecx]
test al, al
je 0x4810f0
mov ebx, eax
xor edi, edi
and ebx, 0xff
jle 0x4810f0
mov ebp, dword [ecx + 7]
mov edx, dword [ebp]
mov eax, dword [esp + 0x88]
cmp edx, eax
je 0x4810e0
cmp byte [edx + 0x48], 7
jae 0x4810e0
mov ecx, dword [edx + 8]
cmp byte [ecx + 0x53], 1
je 0x4810e0
mov eax, dword [ecx + 0x34]
mov si, word [ecx + 0x10]
fld dword [ecx + 0x3c]
mov dword [esp + 0x84], eax
mov eax, dword [ecx + 0x38]
cmp si, 0x3b
mov dword [esp + 0x80], eax
je 0x48101f
mov eax, dword [esp + 0x10]
cmp word [eax + 0x16], 0xf
jne 0x481006
cmp word [ecx + 0x16], 0x31
je 0x48101f
fcom dword [0x634594]
fnstsw ax
test ah, 0x40
je 0x481027
cmp byte [ecx + 4], 0x50
jne 0x481027
cmp si, 0x32
je 0x481027
fstp st(0)
fld dword [0x6345a8]
fld dword [esp + 0x84]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
jne 0x4810de
fld dword [esp + 0x80]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
jne 0x4810de
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
jne 0x4810e0
mov ecx, dword [esp + 0x10]
fld dword [ecx + 0x3c]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x41
jne 0x4810e0
fld dword [edx + 0x38]
fsub dword [esp + 0x64]
fld dword [edx + 0x3c]
fsub dword [esp + 0x68]
fst dword [esp + 0x70]
fcomp dword [0x634594]
fnstsw ax
test ah, 1
je 0x4810a1
fld dword [esp + 0x70]
fchs
fstp dword [esp + 0x70]
fcom dword [0x634594]
fnstsw ax
test ah, 1
je 0x4810b0
fchs
fld dword [esp + 0x84]
fadd dword [esp + 0x34]
fxch st(1)
fcompp
fnstsw ax
test ah, 1
je 0x4810e0
fld dword [esp + 0x80]
fadd dword [esp + 0x38]
fcomp dword [esp + 0x70]
fnstsw ax
test ah, 0x41
je 0x48112b
jmp 0x4810e0
fstp st(0)
inc edi
add ebp, 4
cmp edi, ebx
jl 0x480faa
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x14]
add ecx, 0x20
inc eax
mov dword [esp + 0x7c], ecx
cmp ax, word [esp + 0x18]
mov dword [esp + 0x14], eax
jle 0x480f8d
mov eax, dword [esp + 0x74]
inc eax
cmp ax, word [esp + 0x1c]
mov dword [esp + 0x74], eax
jle 0x480f5d
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x4c
ret 0x30
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x481138
mov edx, dword [edx + 4]
mov dword [eax], edx
pop edi
pop esi
pop ebp
mov al, 6
pop ebx
add esp, 0x4c
ret 0x30
pop edi
pop esi
pop ebp
mov al, 7
pop ebx
add esp, 0x4c
ret 0x30