Function at 0x424f60
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1e4
push ebx
mov eax, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ecx, dword [eax + 4]
mov esi, dword [edi + 0x28]
mov edx, dword [ecx + 0xc]
push 0
push 0
mov eax, dword [edx + 8]
lea edx, [ebp - 0x1b8]
mov dword [ebp - 8], eax
mov ecx, dword [eax]
push ecx
push edx
call fcn.00405ae0
add esp, 0x10
cmp dword [esi + 0xc], 0
jne 0x4255ba
cmp word [esi + 4], 0
je 0x4255ba
lea eax, [ebp - 0x1b8]
mov ecx, dword [ebp - 8]
push eax
mov edx, dword [ecx + 0x120]
push edx
lea eax, [ebp - 0x90]
push eax
mov edx, dword [ecx + 0x138]
push edx
mov eax, dword [ecx + 0x134]
push eax
call fcn.00408300
add esp, 0x14
lea ecx, [ebp - 0x1b8]
mov edx, dword [ebp - 8]
push 1
push ecx
mov eax, dword [edx + 0x120]
push eax
lea ecx, [ebp - 0x64]
push ecx
xor eax, eax
mov ax, word [edi + 0x18]
mov ecx, dword [esi + 0x10]
push eax
push ecx
call fcn.00408250
mov bx, word [esi + 4]
add esp, 0x18
lea eax, [ebp - 0x1b8]
mov edx, dword [ebp - 8]
movzx ecx, bx
mov word [ebp - 2], 0
push eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [edx + 0x120]
lea eax, [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0xc]
push eax
mov ecx, dword [edi + 0x20]
push edx
push ecx
call fcn.00408300
add esp, 0x14
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0xc]
jae 0x425431
cmp dword [ebp - 0x38], 0
je 0x425055
mov eax, 1
jmp 0x4250a0
cmp dword [ebp - 0x34], 0
je 0x425075
cmp dword [ebp - 0x24], 0
je 0x42506e
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [ecx + 0xb0]
jmp 0x4250a0
mov eax, 1
jmp 0x4250a0
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov cx, word [eax + 0x10]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax + ecx*4]
xor eax, eax
mov al, byte [edx]
lea ecx, [ecx + eax*2]
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
xor eax, eax
mov ax, word [ecx + edx]
and eax, 3
inc eax
movzx ecx, bx
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x28]
add ecx, eax
cmp ecx, dword [ebp - 0xc]
ja 0x425431
cmp dword [ebp - 0x38], 0
je 0x4250c4
mov eax, 1
jmp 0x425101
cmp dword [ebp - 0x34], 0
je 0x4250d0
cmp dword [ebp - 0x24], 1
jmp 0x4250fd
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov cx, word [eax + 0x10]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax + ecx*4]
xor eax, eax
mov al, byte [edx]
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx + eax*2]
mov eax, dword [edx]
mov ax, word [ecx + eax]
and ax, 3
cmp ax, 1
sbb eax, eax
neg eax
test eax, eax
je 0x425177
cmp dword [ebp - 0x90], 0
je 0x425115
mov eax, 1
jmp 0x42515e
cmp dword [ebp - 0x8c], 0
je 0x425124
cmp dword [ebp - 0x7c], 1
jmp 0x42515a
mov eax, dword [ebp - 0x84]
xor ecx, ecx
mov cx, word [eax + 0x10]
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax + ecx*4]
xor eax, eax
mov al, byte [edx]
mov edx, dword [ebp - 0x84]
lea ecx, [ecx + eax*2]
mov eax, dword [edx]
mov ax, word [ecx + eax]
and ax, 3
cmp ax, 1
sbb eax, eax
neg eax
test eax, eax
je 0x425177
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x88]
mov al, byte [eax]
sub al, byte [ecx]
cmp al, 1
sbb eax, eax
neg eax
jmp 0x425191
lea eax, [ebp - 0x1b8]
lea ecx, [ebp - 0x90]
push eax
lea edx, [ebp - 0x38]
push ecx
push edx
call fcn.0042ae30
add esp, 0xc
test eax, eax
je 0x425355
mov ebx, dword [ebp - 0x5c]
sub ebx, dword [ebp - 0x54]
cmp dword [esi + 0x1c], 0
je 0x425214
lea eax, [ebp - 0x1b8]
mov ecx, dword [ebp - 8]
push eax
mov edx, dword [ecx + 0x120]
push edx
lea eax, [ebp - 0x1e4]
push eax
mov ecx, dword [esi + 0x18]
push ecx
mov edx, dword [esi + 0x14]
push edx
call fcn.00408300
add esp, 0x14
xor eax, eax
mov ax, word [edi + 0x18]
lea ecx, [ebp - 0x64]
sub eax, ebx
mov edx, dword [esi + 0x18]
push eax
push ecx
push edx
lea eax, [ebp - 0x1e4]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00426ce0
add esp, 0x14
test eax, eax
jge 0x425239
push 0
mov eax, dword [ebp + 8]
push 0x437a50
push 0x19
push 0x3ef
push eax
call fcn.0041c220
add esp, 0x14
jmp 0x425564
xor eax, eax
lea ecx, [ebp - 0x64]
mov ax, word [edi + 0x18]
mov edx, dword [ebp + 8]
sub eax, ebx
push eax
push ecx
push 0
push 0
push edx
call fcn.00426ce0
add esp, 0x14
test eax, eax
jl 0x42546f
add ebx, eax
cmp dword [esi], 0
je 0x425286
mov ax, word [esi + 6]
cmp word [ebp - 2], ax
jae 0x425272
movzx edx, ax
mov ecx, dword [ebp - 2]
sub ebx, edx
and ecx, 0xffff
mov eax, dword [esi + 0x10]
add ebx, ecx
sub eax, ecx
push ebx
add eax, edx
push eax
mov ecx, dword [edi + 0x14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00427170
jmp 0x425298
push ebx
mov eax, dword [esi + 0x10]
push eax
mov ecx, dword [edi + 0x14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00427170
jmp 0x425298
push ebx
mov eax, dword [esi + 0x10]
push eax
mov ecx, dword [edi + 0x14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004271f0
add esp, 0x10
cmp eax, 0xfffffffe
je 0x425564
cmp eax, 0xffffffff
je 0x42548e
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x20]
jb 0x4252bd
inc dword [ebp - 0x30]
jmp 0x4252de
mov eax, dword [ebp - 0x2c]
test byte [eax + 0x30], 0x10
je 0x4252cb
inc dword [ebp - 0x30]
jmp 0x4252de
lea eax, [ebp - 0x1b8]
lea ecx, [ebp - 0x38]
push eax
push ecx
call fcn.00411d90
add esp, 8
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0xc]
jae 0x4254b0
mov bx, word [esi + 4]
mov ecx, dword [ebp - 8]
add word [ebp - 2], ax
mov edx, dword [ecx + 0x120]
sub bx, word [ebp - 2]
lea eax, [ebp - 0x1b8]
movzx ecx, bx
push eax
push edx
lea eax, [ebp - 0x38]
push eax
push ecx
mov eax, dword [ebp - 2]
and eax, 0xffff
add eax, dword [edi + 0x20]
push eax
call fcn.00408300
add esp, 0x14
lea ecx, [ebp - 0x1b8]
mov edx, dword [ebp - 8]
push 1
push ecx
mov eax, dword [edx + 0x120]
push eax
lea ecx, [ebp - 0x64]
push ecx
xor eax, eax
mov ax, word [edi + 0x18]
mov ecx, dword [esi + 0x10]
push eax
push ecx
call fcn.00408250
add esp, 0x18
jmp 0x425420
cmp dword [ebp - 0x38], 0
je 0x425362
mov eax, 1
jmp 0x4253ad
cmp dword [ebp - 0x34], 0
je 0x425382
cmp dword [ebp - 0x24], 0
je 0x42537b
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov al, byte [ecx + 0xb0]
jmp 0x4253ad
mov eax, 1
jmp 0x4253ad
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov cx, word [eax + 0x10]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax + ecx*4]
xor eax, eax
mov al, byte [edx]
lea ecx, [ecx + eax*2]
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
xor eax, eax
mov ax, word [ecx + edx]
and eax, 3
inc eax
mov ecx, dword [ebp - 0x54]
xor edx, edx
mov dx, word [edi + 0x18]
sub ecx, dword [ebp - 0x5c]
add ecx, edx
cmp ecx, eax
jb 0x4254cb
cmp dword [ebp - 0x64], 0
je 0x4253d8
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x5c]
mov al, byte [eax]
mov byte [ecx], al
inc dword [ebp - 0x5c]
jmp 0x4253ef
lea eax, [ebp - 0x1b8]
lea ecx, [ebp - 0x38]
push eax
lea edx, [ebp - 0x64]
push ecx
push edx
call fcn.00429c50
add esp, 0xc
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x20]
jb 0x4253ff
inc dword [ebp - 0x30]
jmp 0x425420
mov eax, dword [ebp - 0x2c]
test byte [eax + 0x30], 0x10
je 0x42540d
inc dword [ebp - 0x30]
jmp 0x425420
lea eax, [ebp - 0x1b8]
lea ecx, [ebp - 0x38]
push eax
push ecx
call fcn.00411d90
add esp, 8
movzx ecx, bx
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
cmp eax, ecx
jb 0x425048
mov cx, word [esi + 4]
mov eax, dword [ebp - 2]
and eax, 0xffff
xor ebx, ebx
movzx edx, cx
mov bx, word [edi + 0x18]
sub edx, eax
cmp edx, ebx
jl 0x4254e7
push 0
mov eax, dword [ebp + 8]
push str.lfibfll__
push 0x19
push 0x3ef
push eax
call fcn.0041c220
add esp, 0x14
jmp 0x425564
push 0
mov eax, dword [ebp + 8]
push 0x437a5c
push 0x19
push 0x3ef
push eax
call fcn.0041c220
add esp, 0x14
jmp 0x425564
xor eax, eax
pop edi
mov word [esi + 4], 0
mov word [esi + 6], 0
mov word [esi + 8], 0
mov dword [esi + 0xc], 1
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
mov word [esi + 4], 0
mov word [esi + 6], 0
mov word [esi + 8], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
mov eax, dword [ebp + 8]
push 0x437a68
push 0x19
push 0x3ef
push eax
call fcn.0041c220
add esp, 0x14
jmp 0x425564
cmp word [ebp - 2], 0
je 0x42552e
sub cx, word [ebp - 2]
mov edx, dword [edi + 0x20]
lea ebx, [eax + edx]
je 0x425504
mov al, byte [ebx]
inc ebx
mov byte [edx], al
inc edx
dec cx
jne 0x4254fa
mov ax, word [esi + 4]
sub ax, word [ebp - 2]
mov word [esi + 4], ax
mov word [esi + 8], ax
mov ax, word [esi + 6]
cmp word [ebp - 2], ax
jae 0x425528
sub ax, word [ebp - 2]
mov word [esi + 6], ax
jmp 0x42552e
mov word [esi + 6], 0
cmp dword [esi], 0
je 0x4255b1
mov cx, word [esi + 4]
mov ax, word [esi + 6]
cmp cx, ax
jbe 0x4255b1
movzx edx, ax
movzx eax, cx
sub eax, edx
mov ecx, dword [edi + 0x14]
push eax
mov eax, dword [edi + 0x20]
add eax, edx
mov edx, dword [ebp + 8]
push eax
push ecx
push edx
call fcn.00427170
add esp, 0x10
cmp eax, 0xfffffffe
jne 0x425582
mov eax, 0xfffffffe
pop edi
mov word [esi + 4], 0
mov word [esi + 6], 0
mov word [esi + 8], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0xffffffff
jne 0x4255a9
xor eax, eax
pop edi
mov word [esi + 4], 0
mov word [esi + 6], 0
mov word [esi + 8], 0
mov dword [esi + 0xc], 1
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ax, word [esi + 4]
mov word [esi + 6], ax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret