Function at 0x41aaa0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x448dd6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x94
push ebx
push ebp
push esi
xor ebp, ebp
push edi
mov edi, ecx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], vtable.CFont.0
mov eax, dword [0x48b448]
mov dword [esp + 0xac], ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], eax
cmp dword [edi + 0x14], ebp
jne 0x41aaf7
mov dword [edi + 0x14], 5
mov ecx, dword [edi + 0x54]
mov eax, dword [edi + 0x5c]
sub eax, ecx
mov dword [esp + 0x28], ecx
cdq
xor eax, edx
mov dword [esp + 0x30], ecx
sub eax, edx
mov dword [esp + 0x58], ebp
cdq
idiv dword [edi + 0x14]
mov edx, dword [edi + 0x24]
mov dword [esp + 0x2c], edx
mov dword [esp + 0xa0], eax
mov eax, dword [edi + 0x20]
add eax, 2
mov dword [esp + 0x24], eax
mov eax, 0x44b708
mov dword [esp + 0x54], eax
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], eax
mov eax, dword [edi + 0x98]
mov esi, dword [esp + 0xb4]
cmp eax, ebp
mov byte [esp + 0xac], 6
jne 0x41ac30
push 0x10
call fcn.0043c073
add esp, 4
mov dword [esp + 0x60], eax
cmp eax, ebp
mov byte [esp + 0xac], 7
je 0x41ab85
mov ecx, eax
call fcn.00440ed1
mov ebx, eax
jmp 0x41ab87
xor ebx, ebx
cmp esi, ebp
mov byte [esp + 0xac], 6
mov dword [edi + 0x98], ebx
jne 0x41ab9d
xor eax, eax
jmp 0x41aba0
mov eax, dword [esi + 4]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push eax
mov ecx, ebx
call fcn.00440f88
mov eax, dword [edi + 0x5c]
mov ebp, dword [edi + 0x54]
mov ecx, dword [edi + 0x58]
mov ebx, dword [edi + 0x50]
sub eax, ebp
sub ecx, ebx
push eax
mov eax, dword [esi + 4]
push ecx
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
lea ecx, [esp + 0x58]
call fcn.004416cd
mov ecx, dword [edi + 0x98]
mov ebp, dword [esp + 0x58]
lea eax, [esp + 0x54]
mov ecx, dword [ecx + 4]
neg eax
sbb eax, eax
and eax, ebp
push eax
push ecx
call fcn.004410c9
mov edx, dword [edi + 0x54]
mov eax, dword [edi + 0x5c]
mov ebx, dword [edi + 0x50]
mov ecx, edx
sub eax, ecx
mov ecx, dword [edi + 0x58]
mov ebp, ebx
sub ecx, ebp
test esi, esi
jne 0x41ac0f
xor ebp, ebp
jmp 0x41ac12
mov ebp, dword [esi + 4]
push 0xcc0020
push edx
push ebx
push ebp
push eax
mov eax, dword [edi + 0x98]
push ecx
push 0
mov edx, dword [eax + 4]
push 0
push edx
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [edi + 0x5c]
mov ebx, dword [edi + 0x54]
mov ecx, dword [edi + 0x58]
mov edx, dword [edi + 0x50]
mov ebp, dword [edi + 0x98]
sub eax, ebx
sub ecx, edx
mov edx, ebx
mov ebx, dword [edi + 0x50]
test ebp, ebp
je 0x41ac52
mov ebp, dword [ebp + 4]
push 0xcc0020
push 0
push 0
push ebp
push eax
mov eax, dword [esi + 4]
push ecx
push edx
push ebx
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [edi + 0x28]
mov eax, dword [edi + 0x54]
mov edx, dword [edi + 0x2c]
mov dword [esp + 0x34], ecx
add eax, 0xa
push 1
mov ecx, esi
mov dword [esp + 0x40], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x44], eax
call fcn.00441191
mov eax, dword [esi]
lea ecx, [edi + 0x90]
push ecx
mov ecx, esi
call dword [eax + 0x28]
mov eax, dword [edi + 0x44]
mov edx, dword [esi]
push eax
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [edi + 8]
mov ebx, dword [edi + 0x14]
mov eax, ecx
cdq
idiv ebx
mov ebp, eax
mov eax, ecx
cdq
idiv ebx
test edx, edx
je 0x41acbf
inc ebp
or eax, 0xffffffff
test ecx, ecx
jne 0x41acc9
mov dword [edi + 0x10], eax
cmp dword [edi + 0x10], eax
jge 0x41acd1
mov dword [edi + 0x10], eax
mov eax, dword [0x48b448]
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], eax
mov ecx, dword [edi + 0x10]
lea edx, [esp + 0x48]
inc ecx
mov byte [esp + 0xac], 9
push ecx
push 0x4591bc
push edx
call fcn.0043a116
add esp, 0xc
lea eax, [esp + 0x44]
push ebp
push 0x4591bc
push eax
call fcn.0043a116
mov ecx, dword [esp + 0x54]
add esp, 0xc
push ecx
push str.CurPage
push 0x45926c
push 0
push 0
push 1
push 0x97
push 0x4a7870
call fcn.0043d682
mov edx, dword [esp + 0x64]
add esp, 0x20
push edx
push str.TotalPage
push 0x45926c
push 0
push 0
push 1
push 0x97
push 0x4a7870
call fcn.0043d682
mov eax, dword [edi + 0x14]
add esp, 0x20
xor ebp, ebp
test eax, eax
mov dword [esp + 0x5c], ebp
jle 0x41b22a
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 8]
add eax, ebp
cmp eax, ecx
jge 0x41b22a
lea ecx, [eax + eax*4]
lea ecx, [ecx + ecx*8]
lea edx, [eax + ecx*2]
mov eax, dword [edi]
lea ecx, [eax + edx*2 + 0xa]
push ecx
lea ecx, [esp + 0x1c]
call fcn.0043bd2c
mov eax, dword [edi + 0x18]
add eax, ebp
lea ecx, [eax + eax*4]
lea edx, [ecx + ecx*8]
mov ecx, dword [edi]
lea eax, [eax + edx*2]
lea edx, [ecx + eax*2 + 0x5a]
lea ecx, [esp + 0x1c]
push edx
call fcn.0043bd2c
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xa0]
push 0x48f63c
mov ebx, dword [eax - 8]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x2c], eax
add eax, ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x3c], eax
add eax, ecx
lea ecx, [esp + 0x14]
mov dword [esp + 0x44], eax
call fcn.0043bd2c
mov eax, dword [edi + 0x18]
add eax, ebp
lea ecx, [eax + eax*4]
lea ecx, [ecx + ecx*8]
lea edx, [eax + ecx*2]
mov eax, dword [edi]
lea ecx, [eax + edx*2]
push ecx
lea ecx, [esp + 0x14]
call fcn.0043bd2c
cmp ebx, dword [edi + 0x1c]
jle 0x41b0a6
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
sub eax, ecx
push 2
cdq
xor eax, edx
lea ecx, [esp + 0x14]
sub eax, edx
cdq
idiv ebx
lea edx, [esp + 0x9c]
push edx
mov ebx, eax
call fcn.00439d26
mov eax, dword [eax]
push 0x459c44
push eax
call fcn.0042c273
add esp, 8
lea ecx, [esp + 0x98]
test eax, eax
sete byte [esp + 0x17]
call fcn.0043bba3
mov al, byte [esp + 0x17]
push 0
test al, al
je 0x41aecb
push str.MenuFontKoreaSize
push str.SelectedMenu
mov ecx, 0x48f560
call fcn.00401ab0
push 0
mov ebp, eax
push 0
push str.MenuFontKorea
lea eax, [esp + 0x90]
push str.SelectedMenu
push eax
mov ecx, 0x48f560
call fcn.00401980
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xb0], 0xa
call fcn.0043bcdc
lea ecx, [esp + 0x84]
mov byte [esp + 0xac], 9
call fcn.0043bba3
mov ecx, dword [esp + 0x20]
push ecx
jmp 0x41af2c
push str.MenuFontSize
push str.SelectedMenu
mov ecx, 0x48f560
call fcn.00401ab0
push 0
push 0
push str.MenuFont
lea edx, [esp + 0xa8]
push str.SelectedMenu
push edx
mov ecx, 0x48f560
mov ebp, eax
call fcn.00401980
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xb0], 0xb
call fcn.0043bcdc
lea ecx, [esp + 0x9c]
mov byte [esp + 0xac], 9
call fcn.0043bba3
mov eax, dword [esp + 0x20]
push eax
push 0
push 0
push 0
push 0
push 1
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
push ebp
call dword [sym.imp.GDI32.dll_CreateFontA]
push eax
lea ecx, [esp + 0x50]
call fcn.004416cd
mov edx, dword [esi]
lea eax, [esp + 0x4c]
push eax
mov ecx, esi
call dword [edx + 0x28]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
add ecx, 2
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x24]
add edx, 2
add ecx, 2
mov dword [esp + 0x80], edx
mov edx, dword [esi]
add eax, 2
mov dword [esp + 0x74], ecx
push 0x464646
mov ecx, esi
mov dword [esp + 0x80], eax
call dword [edx + 0x30]
mov eax, dword [esp + 0x18]
mov edx, dword [esi]
lea ebx, [esp + 0x74]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov ecx, dword [edi + 0x40]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x30]
mov eax, dword [esp + 0x18]
mov edx, dword [esi]
lea ebx, [esp + 0x24]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
lea ecx, [esp + 0x4c]
call fcn.00441724
lea eax, [esp + 0x88]
push 2
push eax
lea ecx, [esp + 0x18]
call fcn.00439d26
mov eax, dword [eax]
push 0x459c44
push eax
call fcn.0042c273
add esp, 8
lea ecx, [esp + 0x88]
test eax, eax
sete bl
call fcn.0043bba3
mov edx, dword [esi]
test bl, bl
lea eax, [edi + 0x88]
jne 0x41b026
lea eax, [edi + 0x80]
push eax
mov ecx, esi
call dword [edx + 0x28]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
add ecx, 2
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x34]
add edx, 2
add ecx, 2
mov dword [esp + 0x70], edx
mov edx, dword [esi]
add eax, 2
mov dword [esp + 0x64], ecx
push 0x464646
mov ecx, esi
mov dword [esp + 0x70], eax
call dword [edx + 0x30]
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
lea ebx, [esp + 0x64]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov ecx, dword [edi + 0x40]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x30]
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
lea ebx, [esp + 0x34]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov ebp, dword [esp + 0x5c]
jmp 0x41b21a
lea eax, [esp + 0x8c]
push 2
push eax
lea ecx, [esp + 0x18]
call fcn.00439d26
mov eax, dword [eax]
push 0x459c44
push eax
call fcn.0042c273
add esp, 8
lea ecx, [esp + 0x8c]
test eax, eax
sete bl
call fcn.0043bba3
mov edx, dword [esi]
lea eax, [edi + 0x78]
test bl, bl
jne 0x41b0e6
lea eax, [edi + 0x70]
push eax
mov ecx, esi
call dword [edx + 0x28]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
add ecx, 2
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x24]
add edx, 2
add ecx, 2
mov dword [esp + 0x80], edx
mov edx, dword [esi]
add eax, 2
mov dword [esp + 0x74], ecx
push 0x464646
mov ecx, esi
mov dword [esp + 0x80], eax
call dword [edx + 0x30]
mov eax, dword [esp + 0x18]
mov edx, dword [esi]
lea ebx, [esp + 0x74]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov ecx, dword [edi + 0x40]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x30]
mov eax, dword [esp + 0x18]
mov edx, dword [esi]
lea ebx, [esp + 0x24]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
lea eax, [esp + 0x60]
push 2
push eax
lea ecx, [esp + 0x18]
call fcn.00439d26
mov eax, dword [eax]
push 0x459c44
push eax
call fcn.0042c273
add esp, 8
lea ecx, [esp + 0x60]
test eax, eax
sete bl
call fcn.0043bba3
mov edx, dword [esi]
lea eax, [edi + 0x88]
test bl, bl
jne 0x41b1a3
lea eax, [edi + 0x80]
push eax
mov ecx, esi
call dword [edx + 0x28]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
add ecx, 2
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x34]
add edx, 2
add ecx, 2
mov dword [esp + 0x70], edx
mov edx, dword [esi]
add eax, 2
mov dword [esp + 0x64], ecx
push 0x464646
mov ecx, esi
mov dword [esp + 0x70], eax
call dword [edx + 0x30]
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
lea ebx, [esp + 0x64]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov ecx, dword [edi + 0x40]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x30]
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
lea ebx, [esp + 0x34]
push 0x24
mov ecx, dword [eax - 8]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x68]
mov eax, dword [edi + 0x14]
inc ebp
cmp ebp, eax
mov dword [esp + 0x5c], ebp
jl 0x41ad6f
mov ecx, esi
call fcn.00440ff0
lea ecx, [esp + 0x44]
mov byte [esp + 0xac], 8
call fcn.0043bba3
lea ecx, [esp + 0x48]
mov byte [esp + 0xac], 6
call fcn.0043bba3
mov esi, vtable.CGdiObject.0
mov dword [esp + 0x90], esi
lea ecx, [esp + 0x90]
mov byte [esp + 0xac], 0xc
call fcn.00441724
mov dword [esp + 0x54], esi
lea ecx, [esp + 0x54]
mov byte [esp + 0xac], 0xd
call fcn.00441724
lea ecx, [esp + 0x10]
mov byte [esp + 0xac], 3
call fcn.0043bba3
lea ecx, [esp + 0x1c]
mov byte [esp + 0xac], 2
call fcn.0043bba3
lea ecx, [esp + 0x18]
mov byte [esp + 0xac], 1
call fcn.0043bba3
lea ecx, [esp + 0x20]
mov byte [esp + 0xac], 0
call fcn.0043bba3
mov dword [esp + 0x4c], esi
lea ecx, [esp + 0x4c]
mov dword [esp + 0xac], 0xe
call fcn.00441724
mov ecx, dword [esp + 0xa4]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0xa0
ret 4