Function at 0x434db0
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword [0x4c1268]
mov edx, dword [esp + 8]
sub esp, 0x50
mov eax, dword [eax + 0xc]
cmp eax, 0x320
jbe 0x434dec
mov eax, str.FONT_fn1024
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434dcd
call fcn.00460870
mov dword [esp + 8], eax
fild dword [esp + 8]
fmul dword [0x47f5b4]
jmp 0x434e6a
cmp eax, 0x280
jbe 0x434e19
mov eax, str.FONT_fn800
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434dfa
call fcn.00460870
mov dword [esp + 8], eax
fild dword [esp + 8]
fmul dword [0x47f6b4]
jmp 0x434e6a
cmp eax, 0x140
jbe 0x434e46
mov eax, str.FONT_fn640
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434e27
call fcn.00460870
mov dword [esp + 8], eax
fild dword [esp + 8]
fmul dword [0x47f6ac]
jmp 0x434e6a
mov eax, str.FONT_fn320
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434e4d
call fcn.00460870
mov dword [esp + 8], eax
fild dword [esp + 8]
fmul dword [0x47f6a4]
fstp dword [esp]
push esi
push edi
mov edi, dword [esp + 0x60]
push 0x20
push edi
call fcn.004300d0
mov esi, dword [esp + 0x64]
push esi
mov word [esi + 0xe], ax
call fcn.00435200
add esp, 0xc
test eax, eax
je 0x434eab
mov cx, word [esi + 0xe]
push ecx
call fcn.004352a0
add esp, 4
mov dword [esi + 0x34], eax
inc word [eax + 6]
pop edi
pop esi
add esp, 0x50
ret
lea edx, [esp + 0x18]
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x434eb3
lea edi, [esp + 0x18]
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [str..wff]
repne scasb al, byte es:[edi]
mov al, byte [0x4ae4f8]
dec edi
push ebx
push ebp
lea ecx, [esp + 0x20]
mov dword [edi], edx
push 1
push ecx
push 1
mov byte [edi + 4], al
call fcn.00456e70
mov edi, eax
push str.Image_File
push str.Init_font
mov edx, dword [edi + 4]
push edx
call fcn.00458430
mov ebx, eax
mov eax, dword [edi + 4]
push eax
push ebx
push edi
call fcn.00456f20
push edi
call fcn.00456f60
push str.newFont
push str.fonts
push 0x30
call fcn.00458430
mov ebp, eax
mov ecx, 0xc
xor eax, eax
mov edi, ebp
rep stosd dword es:[edi], eax
mov ecx, dword [0x787d64]
lea edi, [ebp + 0xc]
mov dword [ebp], ecx
mov dword [0x787d64], ebp
mov dx, word [esi + 0xe]
mov ecx, 8
mov esi, ebx
mov word [ebp + 4], dx
mov word [ebp + 6], 1
push 4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0x18]
lea ecx, [ebx + 0xc]
add eax, ebx
push ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xa0]
add eax, 0x10
push eax
call fcn.00466160
add esp, 0x40
push str.new_chars
push str.fonts
push 0x9400
call fcn.00458430
mov edx, eax
mov ecx, 0x2500
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov dword [ebp + 0x2c], edx
mov esi, dword [ebx + 0x14]
add esp, 0xc
add esi, ebx
cmp word [ebx + 4], ax
mov dword [esp + 0x14], eax
jbe 0x435169
xor eax, eax
mov ecx, dword [ebp + 0x2c]
mov ax, word [esi]
lea edx, [eax + eax*8]
lea eax, [eax + edx*4]
lea edx, [ecx + eax*4]
mov eax, esi
mov ecx, dword [eax]
mov dword [edx], ecx
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
xor eax, eax
mov ax, word [esi]
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*4]
mov eax, dword [ebp + 0x2c]
lea ecx, [eax + edx*4]
xor eax, eax
xor edx, edx
mov ax, word [ecx + 2]
mov dx, word [ecx + 4]
cmp eax, 0x7f
mov byte [ecx + 0xc], 1
jle 0x43501d
lea ecx, [eax - 0x80]
shr ecx, 7
inc ecx
xor eax, eax
mov ax, word [esi]
lea edi, [eax + eax*8]
lea eax, [eax + edi*4]
mov edi, dword [ebp + 0x2c]
inc byte [edi + eax*4 + 0xc]
lea eax, [edi + eax*4 + 0xc]
dec ecx
jne 0x435004
xor ecx, ecx
cmp edx, 0x7f
jle 0x43502b
lea ecx, [edx - 0x80]
shr ecx, 7
inc ecx
xor eax, eax
mov ax, word [esi]
lea edx, [eax + eax*8]
lea eax, [eax + edx*4]
mov edx, dword [ebp + 0x2c]
lea edi, [edx + eax*4 + 0xc]
mov eax, dword [esp + 0x18]
mov ax, word [eax + 2]
shr eax, 7
imul cl
mov cl, byte [edi]
add cl, al
xor eax, eax
mov byte [edi], cl
mov ax, word [esi]
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*4]
mov eax, dword [ebp + 0x2c]
lea eax, [eax + edx*4 + 0xc]
mov dl, byte [eax]
dec dl
mov byte [eax], dl
xor eax, eax
mov ax, word [esi]
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*4]
mov eax, dword [ebp + 0x2c]
xor ecx, ecx
mov cx, word [eax + edx*4 + 2]
lea eax, [eax + edx*4 + 2]
and ecx, 0x8000007f
jns 0x43508e
dec ecx
or ecx, 0xffffff80
inc ecx
mov word [eax], cx
xor eax, eax
mov ax, word [esi]
mov ecx, dword [ebp + 0x2c]
lea edx, [eax + eax*8]
lea eax, [eax + edx*4]
xor edx, edx
mov dx, word [ecx + eax*4 + 4]
lea eax, [ecx + eax*4 + 4]
and edx, 0x8000007f
jns 0x4350b7
dec edx
or edx, 0xffffff80
inc edx
mov word [eax], dx
xor eax, eax
mov ax, word [esi]
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*4]
mov eax, dword [ebp + 0x2c]
lea edi, [eax + edx*4]
mov al, byte [eax + edx*4 + 0xb]
test al, al
je 0x4350e2
and eax, 0xff
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
jmp 0x4350ef
xor ecx, ecx
mov cl, byte [edi + 6]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fmul dword [esp + 0x10]
call fcn.004650b8
mov byte [edi + 0xb], al
xor eax, eax
mov ax, word [esi]
mov ecx, dword [ebp + 0x2c]
lea edx, [eax + eax*8]
lea eax, [eax + edx*4]
movsx edx, byte [ecx + eax*4 + 9]
lea edi, [ecx + eax*4 + 9]
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
fmul dword [esp + 0x10]
call fcn.004650b8
mov byte [edi], al
xor eax, eax
mov ax, word [esi]
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*4]
mov eax, dword [ebp + 0x2c]
movsx ecx, byte [eax + edx*4 + 0xa]
lea edi, [eax + edx*4 + 0xa]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fmul dword [esp + 0x10]
call fcn.004650b8
mov byte [edi], al
mov eax, dword [esp + 0x14]
xor edx, edx
add esi, 0xc
mov dx, word [ebx + 4]
inc eax
cmp eax, edx
mov dword [esp + 0x14], eax
jl 0x434fb4
push str.FE_IMAGE
push 0x38
call fcn.004582d0
mov esi, eax
mov ecx, 0xe
xor eax, eax
mov edi, esi
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x6c]
push 4
lea ecx, [esi + 0xc]
mov ax, word [edi + 0xe]
mov word [esi + 0x12], ax
lea eax, [edi + 0x10]
push eax
push ecx
mov dword [esp + 0x78], eax
call fcn.00466160
mov dl, byte [edi + 8]
push esi
mov byte [esi + 0x18], dl
mov al, byte [edi + 9]
mov byte [esi + 0x19], al
mov cl, byte [edi + 0xa]
mov byte [esi + 0x1a], cl
mov dword [edi + 0x34], ebp
mov dword [ebp + 8], esi
mov dl, byte [edi + 0xa]
mov al, byte [edi + 9]
mov cl, byte [edi + 8]
push edx
mov edx, dword [esp + 0x80]
push eax
mov eax, dword [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x8c]
push edx
push eax
push ecx
call fcn.00435dc0
push ebx
mov dword [esi + 0x20], eax
call fcn.00458f80
add esp, 0x34
pop ebp
pop ebx
pop edi
pop esi
add esp, 0x50
ret