Function at 0x4212a0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x43a05e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x128
mov eax, dword [0x44fba0]
push ebx
push esi
xor eax, ebp
mov dword [esp + 0x128], eax
mov eax, dword [ebp + 8]
push edi
push eax
mov esi, ecx
push 0x66
mov dword [esp + 0x24], esi
call sub.MFC71.DLL_CDialog::CDialog
mov dword [esi + 0x74], 0x43e210
xor ebx, ebx
mov dword [esi + 0x78], 0x43fd00
push ebx
lea ecx, [esi + 0x7c]
mov dword [esp + 0x140], ebx
mov dword [esi], 0x4412d8
mov dword [esi + 0x74], 0x4412d0
mov dword [esi + 0x78], 0x4412cc
call fcn.00425e90
push ebx
lea ecx, [esi + 0x408]
mov byte [esp + 0x140], 1
call fcn.00425850
push ebx
lea ecx, [esi + 0xa8c]
mov byte [esp + 0x140], 2
call fcn.00404450
lea edi, [esi + 0xb04]
mov ecx, edi
mov byte [esp + 0x13c], 3
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43fd08
lea ecx, [esi + 0xb5c]
mov byte [esp + 0x13c], 4
mov dword [esi + 0xb58], ebx
call fcn.0042b8e0
lea ecx, [esi + 0xbd8]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
push 0x43d63a
lea ecx, [esi + 0xbdc]
mov byte [esp + 0x140], 6
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
lea ecx, [esi + 0xbe0]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
push 0x43d63a
lea ecx, [esi + 0xbe4]
mov byte [esp + 0x140], 8
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d63a
lea ecx, [esi + 0xbe8]
mov byte [esp + 0x140], 9
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d63a
lea ecx, [esi + 0xbec]
mov byte [esp + 0x140], 0xa
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d63a
lea ecx, [esi + 0xbf0]
mov byte [esp + 0x140], 0xb
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d63a
lea ecx, [esi + 0xbf4]
mov byte [esp + 0x140], 0xc
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d63a
lea ecx, [esi + 0xbf8]
mov byte [esp + 0x140], 0xd
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
lea ecx, [esi + 0xbfc]
push 0x43d63a
mov byte [esp + 0x140], 0xe
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
lea ecx, [esi + 0xc00]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov dword [esi + 0xc08], ebx
mov dword [esi + 0xc0c], ebx
mov dword [esi + 0xc10], ebx
lea ecx, [esi + 0xd6c]
mov byte [esp + 0x13c], 0x11
mov dword [esi + 0xc1c], ebx
mov dword [esi + 0xc24], ebx
mov dword [esi + 0xc28], ebx
mov byte [esi + 0xc2c], bl
mov byte [esi + 0xc2d], 1
mov byte [esi + 0xc2e], bl
mov byte [esi + 0xc2f], 1
mov byte [esi + 0xc30], bl
mov byte [esi + 0xc31], bl
mov byte [esi + 0xc32], bl
mov dword [esi + 0xc34], ebx
mov dword [esi + 0xc38], ebx
mov dword [esi + 0xc3c], ebx
mov dword [esi + 0xc40], ebx
mov byte [esi + 0xd60], bl
mov byte [esi + 0xd61], bl
call fcn.0041eac0
lea ecx, [esi + 0xd78]
mov byte [esp + 0x13c], 0x12
call fcn.0041eac0
lea ecx, [esi + 0xd84]
mov byte [esp + 0x13c], 0x13
call fcn.0041eb40
lea ecx, [esi + 0xd98]
mov byte [esp + 0x13c], 0x14
mov dword [esi + 0xd90], ebx
call fcn.00407550
lea ecx, [esi + 0xe88]
mov byte [esp + 0x13c], 0x15
call fcn.00407550
lea ecx, [esi + 0xf78]
mov byte [esp + 0x13c], 0x16
call fcn.00407550
lea ecx, [esi + 0x1068]
mov byte [esp + 0x13c], 0x17
call fcn.00407550
push fcn.004065f0
push fcn.004065a0
push 6
push 0x17c
lea eax, [esi + 0x115c]
push eax
mov byte [esp + 0x150], 0x18
call fcn.0043172e
lea ecx, [esi + 0x1a44]
mov byte [esp + 0x13c], 0x19
call fcn.004065a0
lea ecx, [esi + 0x1bc0]
mov byte [esp + 0x13c], 0x1a
call fcn.004065a0
mov byte [esp + 0x13c], 0x1b
lea ecx, [esi + 0x1d3c]
call fcn.004065a0
lea ecx, [esi + 0x1eb8]
mov byte [esp + 0x13c], 0x1c
call fcn.004065a0
lea ecx, [esi + 0x2034]
mov byte [esp + 0x13c], 0x1d
call fcn.004065a0
lea ecx, [esi + 0x21b0]
mov byte [esp + 0x13c], 0x1e
call fcn.004065a0
lea ecx, [esi + 0x232c]
mov byte [esp + 0x13c], 0x1f
call fcn.004065a0
push sub.MFC71.DLL_CStatic::CStatic
push 0x401920
push 3
push 0x54
lea ecx, [esi + 0x24a8]
push ecx
mov byte [esp + 0x150], 0x20
call fcn.0043172e
push sub.MFC71.DLL_CStatic::CStatic
push 0x401920
push 3
push 0x54
lea edx, [esi + 0x25a4]
push edx
mov byte [esp + 0x150], 0x21
call fcn.0043172e
push 0x426780
push 0x4266c0
push 3
push 8
lea eax, [esi + 0x2840]
push eax
mov byte [esp + 0x150], 0x22
mov dword [esi + 0x26cc], ebx
mov dword [esi + 0x26d0], ebx
mov dword [esi + 0x26e4], ebx
call fcn.0043172e
lea ecx, [esi + 0x2ec8]
mov byte [esp + 0x13c], 0x23
call fcn.0042a0e0
lea edi, [esi + 0x2ed8]
mov ecx, edi
mov byte [esp + 0x13c], 0x24
call fcn.00415d80
mov dword [edi + 4], eax
mov dword [edi + 8], ebx
push 0x43d63a
lea ecx, [esi + 0x2ee4]
mov byte [esp + 0x140], 0x25
call dword [0x43c82c]
push 0x43d63a
lea ecx, [esi + 0x2f0c]
mov byte [esp + 0x140], 0x26
mov dword [esi + 0x2f00], ebx
mov byte [esi + 0x2f04], 1
mov byte [esi + 0x2f05], 1
mov byte [esi + 0x2f06], bl
mov dword [esi + 0x2f08], ebx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
mov byte [esp + 0x13c], 0x27
mov byte [esi + 0x2f10], bl
mov byte [esi + 0x2f11], bl
mov dword [esi + 0x2f14], ebx
mov dword [esi + 0x2f24], ebx
mov dword [esi + 0x2f28], ebx
mov dword [esi + 0x2f2c], 0xffffffff
lea ecx, [esi + 0x2f44]
mov dword [esi + 0x2f30], 0x3e8
mov dword [esi + 0x2f34], ebx
mov dword [esi + 0x2f38], ebx
mov byte [esi + 0x2f3c], bl
mov dword [esi + 0x2f40], ebx
call fcn.0042ee70
lea edi, [esi + 0x2fb4]
mov ecx, edi
mov byte [esp + 0x13c], 0x28
mov dword [esi + 0x2fb0], ebx
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x3008]
mov ecx, edi
mov byte [esp + 0x13c], 0x29
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x305c]
mov ecx, edi
mov byte [esp + 0x13c], 0x2a
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x30b0]
mov ecx, edi
mov byte [esp + 0x13c], 0x2b
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43f7a0
lea edi, [esi + 0x3104]
mov ecx, edi
mov byte [esp + 0x13c], 0x2c
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea edi, [esi + 0x3158]
mov ecx, edi
mov byte [esp + 0x13c], 0x2d
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea edi, [esi + 0x31ac]
mov ecx, edi
mov byte [esp + 0x13c], 0x2e
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea edi, [esi + 0x3200]
mov ecx, edi
mov byte [esp + 0x13c], 0x2f
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea edi, [esi + 0x3254]
mov ecx, edi
mov byte [esp + 0x13c], 0x30
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x32a8]
mov ecx, edi
mov byte [esp + 0x13c], 0x31
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x32fc]
mov ecx, edi
mov byte [esp + 0x13c], 0x32
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x3350]
mov ecx, edi
mov byte [esp + 0x13c], 0x33
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x33a4]
mov ecx, edi
mov byte [esp + 0x13c], 0x34
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x33f8]
mov ecx, edi
mov byte [esp + 0x13c], 0x35
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x344c]
mov ecx, edi
mov byte [esp + 0x13c], 0x36
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x34a0]
mov ecx, edi
mov byte [esp + 0x13c], 0x37
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea ecx, [esi + 0x34f8]
mov dword [esi + 0x34f4], ebx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov dword [esi + 0x3500], ebx
mov dword [esi + 0x350c], ebx
mov dword [esi + 0x3510], ebx
mov dword [esi + 0x3518], ebx
mov dword [esi + 0x351c], ebx
mov dword [esi + 0x3520], ebx
mov dword [esi + 0x3528], ebx
mov dword [esi + 0x352c], ebx
mov dword [esi + 0x3530], ebx
mov dword [esi + 0x3534], ebx
mov dword [esi + 0x3538], ebx
mov dword [esi + 0x3540], ebx
push esi
lea ecx, [esi + 0x3544]
mov byte [esp + 0x140], 0x3f
call fcn.0040b1d0
lea edi, [esi + 0x3ec8]
mov ecx, edi
mov byte [esp + 0x13c], 0x40
mov dword [esi + 0x3ec4], 1
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d9c8
lea edi, [esi + 0x3f1c]
mov ecx, edi
mov byte [esp + 0x13c], 0x41
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea edi, [esi + 0x3f70]
mov ecx, edi
mov byte [esp + 0x13c], 0x42
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
lea ecx, [esi + 0x3fc4]
mov byte [esp + 0x13c], 0x43
call fcn.004065a0
lea edi, [esi + 0x4140]
mov ecx, edi
mov byte [esp + 0x13c], 0x44
call sub.MFC71.DLL_CWnd::CWnd
mov dword [edi], 0x43d0f8
mov byte [esi + 0x41a8], bl
mov dword [esi + 0x41ac], ebx
mov dword [esi + 0x41b0], ebx
lea ecx, [esi + 0x41b4]
mov byte [esp + 0x13c], 0x46
call fcn.00426a50
mov dword [esi + 0x41c8], ebx
mov byte [esi + 0x41cc], bl
mov dword [esi + 0x26a0], ebx
mov dword [esi + 0x26a4], ebx
mov dword [esi + 0x26a8], ebx
push 0x104
mov dword [esi + 0x26ac], ebx
mov dword [esi + 0x26b0], ebx
mov dword [esi + 0x26b4], ebx
mov dword [esi + 0x26b8], ebx
lea ecx, [esi + 0x26e8]
push 0x43d63a
push ecx
mov byte [esp + 0x148], 0x47
mov dword [esi + 0x26bc], ebx
mov dword [esi + 0x26c0], ebx
mov dword [esi + 0x26c4], ebx
mov dword [esi + 0x26c8], ebx
call dword [sym.imp.MSVCR71.dll_strncpy]
mov byte [esp + 0x2c], bl
xor eax, eax
mov ecx, 0x40
lea edi, [esp + 0x2d]
rep stosd dword es:[edi], eax
push 0x104
lea edx, [esp + 0x30]
stosw word es:[edi], ax
push edx
push 0x43d63a
stosb byte es:[edi], al
call fcn.00408730
add esp, 0x18
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push 0x43d724
lea ecx, [esp + 0x1c]
mov byte [esp + 0x140], 0x48
call dword [sym.imp.MFC71.DLL_ATL::CStringT::TrimRight]
push 0x5c
lea ecx, [esp + 0x1c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::ReverseFind]
inc eax
push eax
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Left]
lea edi, [esi + 0xbfc]
push eax
mov ecx, edi
mov byte [esp + 0x140], 0x49
call dword [0x43c648]
lea ecx, [esp + 0x14]
mov byte [esp + 0x13c], 0x48
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov edi, dword [edi]
push edi
call dword [0x43c124]
xor edx, edx
lea eax, [esi + 0x26d4]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
xor eax, eax
mov ecx, 0x11b
lea edi, [esi + 0x2a5c]
rep stosd dword es:[edi], eax
call sub.MFC71.DLL_AfxGetModuleState
push 5
push 0xe
push 5
call sub.MFC71.DLL_AfxFindResourceHandle
push eax
call dword [0x43cba0]
push str.Userdataloader.bmp
lea edi, [esi + 0xbfc]
lea ecx, [esp + 0x18]
push edi
push ecx
mov dword [esi + 0xd68], eax
call fcn.00404560
mov eax, dword [eax]
add esp, 0xc
push 0x50
push ebx
push ebx
push ebx
push eax
push ebx
call dword [0x43cb1c]
cmp eax, ebx
mov dword [esi + 0xd64], eax
jne 0x421bb7
call dword [0x43c0c8]
xor al, al
jmp 0x421bb9
mov al, 1
cmp al, bl
lea ecx, [esp + 0x14]
sete byte [esp + 0x13]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
cmp byte [esp + 0x13], bl
je 0x421c0c
push str.Loaderloader.bmp
lea edx, [esp + 0x18]
push edi
push edx
call fcn.00404560
mov eax, dword [eax]
add esp, 0xc
push 0x50
push ebx
push ebx
push ebx
push eax
push ebx
call dword [0x43cb1c]
cmp eax, ebx
mov dword [esi + 0xd64], eax
jne 0x421c02
call dword [0x43c0c8]
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov eax, dword [0x44f198]
mov dword [esi + 0x2818], eax
mov dword [esi + 0x2824], ebx
mov ecx, dword [0x44f198]
mov dword [esi + 0x281c], ecx
mov dword [esi + 0x2828], ebx
mov edx, dword [0x44f198]
mov dword [esi + 0x2820], edx
mov dword [esi + 0x282c], ebx
mov dword [esi + 0x2830], ebx
mov dword [esi + 0x2834], 0x403
mov dword [esi + 0x2838], 0x404
mov dword [esi + 0x283c], 0x405
mov ecx, dword [0x44ff94]
cmp ecx, ebx
jne 0x421ca8
push 0x48
call sub.MFC71.DLL_operator_new_1
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x13c], 0x4a
je 0x421c92
mov ecx, eax
call fcn.00425750
jmp 0x421c94
xor eax, eax
mov ecx, eax
cmp ecx, ebx
mov byte [esp + 0x13c], 0x48
mov dword [0x44ff94], ecx
je 0x421cbb
mov eax, dword [esi + 0xc14]
inc eax
push eax
call fcn.00425240
mov ecx, dword [0x44ff94]
mov edi, ecx
cmp edi, ebx
je 0x421cf2
mov ecx, dword [esi + 0xc14]
inc ecx
push ecx
mov ecx, edi
call fcn.00425240
push 0x46
mov ecx, edi
call fcn.00425290
push 1
mov ecx, edi
call fcn.00425190
push 1
mov ecx, edi
call fcn.00425230
mov ecx, edi
call fcn.00425250
mov ecx, esi
call sub.MFC71.DLL_CCmdTarget::EnableAutomation
mov byte [esi + 0x353c], 2
mov dword [esi + 0x3504], 0x202601
mov dword [esi + 0x3508], 0x3e8
mov dword [esi + 0x34fc], ebx
mov dword [esi + 0x3ec0], ebx
mov ecx, dword [esi + 0x2edc]
mov eax, dword [ecx]
mov dword [ecx], ecx
mov ecx, dword [esi + 0x2edc]
mov dword [ecx + 4], ecx
cmp eax, dword [esi + 0x2edc]
mov dword [esi + 0x2ee0], ebx
je 0x421d58
mov edi, dword [eax]
push eax
call sub.MFC71.DLL_operator_delete_1
mov ecx, dword [esi + 0x2edc]
add esp, 4
cmp edi, ecx
mov eax, edi
jne 0x421d41
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov ecx, dword [esp + 0x134]
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x12c]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0043146e
mov esp, ebp
pop ebp
ret 4