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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x43c607
mov eax, dword fs:[0]
push eax
sub esp, 0x70
push ebx
push esi
push edi
mov eax, dword [0x455028]
xor eax, esp
push eax
lea eax, [esp + 0x80]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [esp + 0x14], ebx
mov esi, dword [edi + 0x48]
mov eax, dword [eax]
add eax, 0x74
mov dword [esp + 0x1c], esi
mov dword [eax + 4], esi
cmp esi, 2
jae 0x41d816
mov eax, str.APPINFO
jmp 0x41d85c
mov ecx, dword [ebp + 0x10]
push ecx
lea edx, [esp + 0x3c]
push edx
call fcn.0041f9e0
lea ecx, [esp + 0x3c]
mov dword [esp + 0x90], ebx
push ecx
mov ecx, eax
mov ebx, str.FRAME
mov dword [esp + 0x20], 1
call fcn.004047c0
add esp, 0xc
mov dword [esp + 0x88], 1
mov eax, dword [eax]
mov dword [esp + 0x14], 3
push eax
lea ecx, [esp + 0x24]
call dword [0x443828]
mov dword [esp + 0x88], 2
mov ebx, dword [esp + 0x14]
test bl, 2
je 0x41d88c
and ebx, 0xfffffffd
lea ecx, [esp + 0x34]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x88], 4
test bl, 1
je 0x41d8aa
and ebx, 0xfffffffe
lea ecx, [esp + 0x38]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0
push 1
push ecx
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x64], esp
push edx
call dword [0x443834]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edx, dword [eax + 0x74]
lea ecx, [eax + 0x74]
mov eax, dword [edx + 0x18]
push edi
call eax
push ecx
mov ecx, esp
mov dword [esp + 0x5c], esp
push 0x445aa0
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 5
lea edx, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x5c], esp
push edx
call dword [0x443834]
push edi
mov byte [esp + 0x94], 4
call fcn.0040ccc0
mov ecx, 1
cmp eax, ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x30], ecx
jl 0x41de92
jmp 0x41d929
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x1c]
push ecx
cmp esi, 2
jae 0x41d975
lea eax, [esp + 0x58]
push eax
call fcn.0041f9e0
lea ecx, [esp + 0x58]
push ecx
mov byte [esp + 0x94], 6
or dword [esp + 0x20], 4
mov ecx, eax
mov ebx, str.CONTROL
call fcn.004047c0
add esp, 0xc
mov dword [esp + 0x88], 7
mov ebx, dword [esp + 0x14]
or ebx, 8
mov dword [esp + 0x14], ebx
jmp 0x41da20
lea edx, [esp + 0x50]
push edx
call fcn.0041f9e0
mov esi, eax
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [esp + 0x54]
mov dword [esp + 0x94], 8
or dword [esp + 0x20], 0x10
push ecx
call fcn.0041f9e0
lea edx, [esp + 0x54]
mov dword [esp + 0x98], 9
or dword [esp + 0x24], 0x20
push edx
mov ecx, eax
mov ebx, str.CONTROL
call fcn.004047c0
add esp, 0x14
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x8c], 0xa
or dword [esp + 0x18], 0x40
push eax
mov edi, 0x444ebc
call fcn.00401ae0
lea ecx, [esp + 0x44]
push esi
push ecx
mov dword [esp + 0x98], 0xb
or dword [esp + 0x24], 0x80
mov ecx, eax
call fcn.00403210
add esp, 0x10
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x88], 0xc
or dword [esp + 0x14], 0x100
mov ebx, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x1c]
call dword [0x443834]
mov dword [esp + 0x88], 0xd
test ebx, 0x100
je 0x41da52
and ebx, 0xfffffeff
lea ecx, [esp + 0x3c]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, bl
jns 0x41da6a
and ebx, 0xffffff7f
lea ecx, [esp + 0x40]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, 0x40
je 0x41da80
and ebx, 0xffffffbf
lea ecx, [esp + 0x44]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, 0x20
je 0x41da96
and ebx, 0xffffffdf
lea ecx, [esp + 0x48]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, 0x10
je 0x41daac
and ebx, 0xffffffef
lea ecx, [esp + 0x4c]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
test bl, 8
je 0x41dac2
and ebx, 0xfffffff7
lea ecx, [esp + 0x50]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov byte [esp + 0x88], 0x14
test bl, 4
je 0x41dae0
and ebx, 0xfffffffb
lea ecx, [esp + 0x54]
mov dword [esp + 0x14], ebx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x445b00
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x15
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x443834]
push edi
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x445b0c
mov esi, eax
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x16
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [0x443834]
push edi
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
cmp dword [esp + 0x1c], 2
push ecx
mov edi, eax
mov ecx, esp
mov dword [esp + 0x30], esp
jae 0x41dba0
push str.right
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x17
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x443834]
mov ebx, dword [ebp + 0xc]
push ebx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
sub eax, esi
jmp 0x41dbd9
push 0x445b20
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x18
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [0x443834]
mov ecx, dword [ebp + 0xc]
push ecx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
mov ebx, dword [ebp + 0xc]
cmp dword [esp + 0x1c], 2
push ecx
mov dword [esp + 0x28], eax
mov ecx, esp
mov dword [esp + 0x30], esp
jae 0x41dc22
push str.bottom
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x19
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x443834]
push ebx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
sub eax, edi
jmp 0x41dc55
push 0x445b3c
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x1a
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [0x443834]
push ebx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x445b4c
mov dword [esp + 0x30], eax
call dword [0x443828]
push ecx
mov byte [esp + 0x90], 0x1b
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x64], esp
push edx
call dword [0x443834]
push ebx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
cmp dword [esp + 0x1c], 2
mov ebx, eax
jae 0x41dcc8
cmp ebx, 7
jne 0x41dca6
lea ebx, [eax + 1]
jmp 0x41dcc8
cmp ebx, 6
jne 0x41dcb2
mov ebx, 7
jmp 0x41dcc8
cmp ebx, 5
jne 0x41dcbe
mov ebx, 6
jmp 0x41dcc8
cmp ebx, 8
jne 0x41dcc8
mov ebx, 5
xor eax, eax
mov dword [esp + 0x2c], eax
cmp ebx, 5
jne 0x41dce0
mov ebx, 4
mov dword [esp + 0x2c], 1
cmp ebx, 6
jne 0x41dd31
push ecx
mov ecx, esp
mov dword [esp + 0x60], esp
push str.CmbHeight
call dword [0x443828]
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
mov byte [esp + 0x94], 0x1c
call dword [0x443834]
mov ecx, dword [ebp + 0xc]
push ecx
mov byte [esp + 0x94], 0x14
call fcn.0040ccc0
cmp dword [esp + 0x1c], 7
movzx eax, ax
jae 0x41dd31
mov eax, 0xa0
movsx edx, ax
mov eax, dword [esp + 0x24]
lea ecx, [eax + esi]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x74], ecx
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
add eax, edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x78], eax
cmp ebx, 6
jne 0x41dd60
movsx edx, dx
add edx, eax
mov dword [esp + 0x78], edx
mov edx, dword [ecx + 0x14c]
sub edx, dword [ecx + 0x148]
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov esi, dword [esp + 0x80]
lea edi, [ecx + 0x13c]
mov dword [eax + 4], esi
mov esi, dword [esp + 0x84]
mov dword [eax + 8], esi
mov esi, dword [esp + 0x88]
sar edx, 2
push ebx
mov dword [eax + 0xc], esi
call fcn.004306b0
mov ecx, dword [edi + 0xc]
add esp, 0x14
mov dword [esp + 0x28], eax
test ecx, ecx
jne 0x41ddb2
xor edx, edx
jmp 0x41ddba
mov edx, dword [edi + 0x14]
sub edx, ecx
sar edx, 2
mov esi, dword [edi + 0x10]
mov ebx, esi
sub ebx, ecx
sar ebx, 2
cmp ebx, edx
jae 0x41ddd2
mov dword [esi], eax
add esi, 4
mov dword [edi + 0x10], esi
jmp 0x41ddf1
cmp ecx, esi
jbe 0x41dddc
call dword [sym.imp.MSVCR90.dll__invalid_parameter_noinfo]
mov eax, dword [edi]
push esi
push eax
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x70]
push eax
mov eax, edi
call fcn.0041c970
mov esi, dword [ebp + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 0x14c]
sub ecx, dword [eax + 0x148]
add eax, 0x13c
test ecx, 0xfffffffc
jne 0x41de13
xor eax, eax
jmp 0x41de1a
call fcn.0041c4a0
mov eax, dword [eax]
mov edx, dword [esp + 0x1c]
mov dword [eax + 4], edx
mov eax, dword [esi]
mov ecx, dword [eax + 0x14c]
sub ecx, dword [eax + 0x148]
add eax, 0x13c
test ecx, 0xfffffffc
jne 0x41de40
xor esi, esi
jmp 0x41de47
call fcn.0041c4a0
mov esi, dword [eax]
mov edx, dword [esp + 0x2c]
push edx
push 1
push ecx
lea eax, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x6c], esp
push eax
call dword [0x443834]
mov edx, dword [esi]
mov eax, dword [ebp + 0xc]
mov edx, dword [edx + 0x18]
push eax
mov ecx, esi
call edx
lea ecx, [esp + 0x18]
mov byte [esp + 0x88], 4
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ecx, dword [esp + 0x30]
inc ecx
cmp ecx, dword [esp + 0x58]
mov dword [esp + 0x30], ecx
jle 0x41d922
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ecx, dword [esp + 0x80]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret