Function at 0x402960
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x688
push ebx
push esi
push edi
lea edi, [ebp - 0x448]
mov ecx, 0x112
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x45e034]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, 0xae703a
call fcn.0041ea00
cmp dword [0x45e008], 1
jne 0x402b60
cmp dword [0x45e010], 1
jne 0x402a7e
cmp dword [0xae53ec], 1
jne 0x402a05
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x414
mov ecx, dword [ebp + 8]
push ecx
push 0x28
push 0xa0
push 1
push 0
push 0x4001400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed70], eax
jmp 0x402a53
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x414
mov ecx, dword [ebp + 8]
push ecx
push 0x28
push 0xa0
push 1
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed70], eax
cmp dword [0x45ed70], 0
jne 0x402a79
mov esi, esp
push 0x10
push 0x44c3bc
push str.Browser_Button_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
jmp 0x402b4b
cmp dword [0xae53ec], 1
jne 0x402ad7
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x414
mov ecx, dword [ebp + 8]
push ecx
push 0x19
push 0xa0
push 1
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed70], eax
jmp 0x402b25
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x414
mov ecx, dword [ebp + 8]
push ecx
push 0x19
push 0xa0
push 1
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed70], eax
cmp dword [0x45ed70], 0
jne 0x402b4b
mov esi, esp
push 0x10
push 0x44c3bc
push str.Browser_Button_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
push 0
push 0x5dd
mov eax, dword [0x45ed70]
push eax
call fcn.004039a0
add esp, 0xc
cmp dword [0xae53ec], 1
jne 0x402bbc
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0
mov ecx, dword [0x45ed0c]
push ecx
push 0x140
push 0xf
push 0xf
push 0xb4
push 0x4000000b
push 0
push str.SCROLLBAR
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed78], eax
jmp 0x402c0d
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0
mov ecx, dword [0x45ed0c]
push ecx
push 0x154
push 0xf
push 0xf
push 0xb4
push 0x4000000b
push 0
push str.SCROLLBAR
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed78], eax
cmp dword [0x45ed78], 0
jne 0x402c38
mov esi, esp
push 0x10
push 0x44c3bc
push str.ScrollBar_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
jmp 0x402d0b
cmp dword [0xae53ec], 1
jne 0x402c94
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0
mov ecx, dword [0x45ed0c]
push ecx
push 0x140
push 0xf
push 0xf
push 0xb4
push 0x40000001
push 0
push str.SCROLLBAR
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed78], eax
jmp 0x402ce5
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0
mov ecx, dword [0x45ed0c]
push ecx
push 0x154
push 0xf
push 0xf
push 0xb4
push 0x40000001
push 0
push str.SCROLLBAR
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed78], eax
cmp dword [0x45ed78], 0
jne 0x402d0b
mov esi, esp
push 0x10
push 0x44c3bc
push str.ScrollBar_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
mov esi, esp
push 1
push 0x3e8
push 0
push 1
mov eax, dword [0x45ed78]
push eax
call dword [sym.imp.USER32.dll_SetScrollRange]
cmp esi, esp
call fcn.0041e9d0
cmp dword [0x45e00c], 1
jne 0x402ed3
cmp dword [0x45e010], 1
jne 0x402df1
cmp dword [0xae53ec], 1
jne 0x402d9e
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x415
mov ecx, dword [ebp + 8]
push ecx
push 0x28
push 0xa0
push 0x2b
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed74], eax
jmp 0x402dec
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x415
mov ecx, dword [ebp + 8]
push ecx
push 0x28
push 0xa0
push 0x2b
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed74], eax
jmp 0x402e98
cmp dword [0xae53ec], 1
jne 0x402e4a
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x415
mov ecx, dword [ebp + 8]
push ecx
push 0x19
push 0xa0
push 0x1c
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed74], eax
jmp 0x402e98
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x415
mov ecx, dword [ebp + 8]
push ecx
push 0x19
push 0xa0
push 0x1c
push 0
push 0x4000400b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed74], eax
push 0
push 0x5de
mov eax, dword [0x45ed74]
push eax
call fcn.004039a0
add esp, 0xc
cmp dword [0x45ed74], 0
jne 0x402ed3
mov esi, esp
push 0x10
push 0x44c3bc
push str.Email_Button_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov esi, esp
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [0x45ed68]
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45e898], 2
call fcn.00412020
cmp dword [0x45ed70], 0
je 0x402f38
cmp dword [0x45e010], 1
jne 0x402f2b
mov eax, dword [0x45e898]
add eax, 0x2b
mov dword [0x45e898], eax
jmp 0x402f38
mov eax, dword [0x45e898]
add eax, 0x1c
mov dword [0x45e898], eax
cmp dword [0x45ed74], 0
je 0x402f66
cmp dword [0x45e010], 1
jne 0x402f59
mov eax, dword [0x45e898]
add eax, 0x2b
mov dword [0x45e898], eax
jmp 0x402f66
mov eax, dword [0x45e898]
add eax, 0x1c
mov dword [0x45e898], eax
cmp dword [0x45e014], 1
jne 0x403291
mov dword [ebp - 0x24], 0
jmp 0x402f85
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [0x45ef34]
jge 0x403291
cmp dword [0x45e010], 1
jne 0x403087
cmp dword [0xae53ec], 1
jne 0x403017
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
mov ecx, dword [ebp - 0x24]
lea edx, [ecx*4 + 0x7d0]
push edx
mov eax, dword [ebp + 8]
push eax
push 0x28
push 0xa0
mov ecx, dword [0x45e898]
push ecx
push 0
push 0x4000000b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov edx, dword [ebp - 0x24]
mov dword [edx*4 + 0x45ed80], eax
mov eax, dword [0x45e898]
add eax, 0x2b
mov dword [0x45e898], eax
jmp 0x403082
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
mov ecx, dword [ebp - 0x24]
lea edx, [ecx*4 + 0x7d0]
push edx
mov eax, dword [ebp + 8]
push eax
push 0x28
push 0xa0
mov ecx, dword [0x45e898]
push ecx
push 0
push 0x4000000b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov edx, dword [ebp - 0x24]
mov dword [edx*4 + 0x45ed80], eax
mov eax, dword [0x45e898]
add eax, 0x2b
mov dword [0x45e898], eax
jmp 0x403168
cmp dword [0xae53ec], 1
jne 0x4030fd
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
mov ecx, dword [ebp - 0x24]
lea edx, [ecx*4 + 0x7d0]
push edx
mov eax, dword [ebp + 8]
push eax
push 0x19
push 0xa0
mov ecx, dword [0x45e898]
push ecx
push 0
push 0x4000000b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov edx, dword [ebp - 0x24]
mov dword [edx*4 + 0x45ed80], eax
mov eax, dword [0x45e898]
add eax, 0x1c
mov dword [0x45e898], eax
jmp 0x403168
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
mov ecx, dword [ebp - 0x24]
lea edx, [ecx*4 + 0x7d0]
push edx
mov eax, dword [ebp + 8]
push eax
push 0x19
push 0xa0
mov ecx, dword [0x45e898]
push ecx
push 0
push 0x4000000b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov edx, dword [ebp - 0x24]
mov dword [edx*4 + 0x45ed80], eax
mov eax, dword [0x45e898]
add eax, 0x1c
mov dword [0x45e898], eax
mov dword [ebp - 0x30], 0x44c3b0
mov eax, dword [ebp - 0x24]
cmp dword [eax*4 + 0x46c110], 0
je 0x4031c3
mov esi, esp
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx*4 + 0x46c110]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
cmp esi, esp
call fcn.0041e9d0
test eax, eax
je 0x4031c3
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax*4 + 0x46c110]
push ecx
push 0
mov edx, dword [ebp - 0x24]
mov eax, dword [edx*4 + 0x45ed80]
push eax
call fcn.004039a0
add esp, 0xc
jmp 0x403246
mov esi, esp
push 0x200
lea eax, [ebp - 0x438]
push eax
push 0x5eb
mov ecx, dword [0x45eb70]
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
cmp esi, esp
call fcn.0041e9d0
test eax, eax
jne 0x40320b
mov esi, esp
push 0x10
push 0x44c3bc
push str.Error_loading_resource
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax*4 + 0x46bf80]
push ecx
push 0x200
lea edx, [ebp - 0x438]
push edx
call fcn.004254c0
add esp, 0xc
lea eax, [ebp - 0x438]
push eax
push 0
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx*4 + 0x45ed80]
push edx
call fcn.004039a0
add esp, 0xc
mov eax, dword [ebp - 0x24]
cmp dword [eax*4 + 0x45ed80], 0
jne 0x403270
mov esi, esp
push 0x10
push 0x44c3bc
push str.Pinned_Button_Creation_Failed.
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp esi, esp
call fcn.0041e9d0
mov esi, esp
push 5
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax*4 + 0x45ed80]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
cmp esi, esp
call fcn.0041e9d0
jmp 0x402f7c
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
mov dword [0x45e894], eax
mov eax, dword [0x45e898]
mov dword [0x45e890], eax
call fcn.0041c2e0
mov eax, dword [0x45e898]
cmp eax, dword [0x45e894]
jae 0x4032d1
mov esi, esp
push 0
mov eax, dword [0x45ed78]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp esi, esp
call fcn.0041e9d0
jmp 0x4032e8
mov esi, esp
push 5
mov eax, dword [0x45ed78]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp esi, esp
call fcn.0041e9d0
cmp dword [0x45e008], 0
je 0x403308
mov esi, esp
push 5
mov eax, dword [0x45ed70]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp esi, esp
call fcn.0041e9d0
cmp dword [0x45e00c], 0
je 0x403328
mov esi, esp
push 5
mov eax, dword [0x45ed74]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp esi, esp
call fcn.0041e9d0
cmp dword [0xae53ec], 1
jne 0x403391
mov eax, dword [0x45e898]
add eax, 4
mov dword [0x45e898], eax
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x416
mov ecx, dword [ebp + 8]
push ecx
push 2
push 0xa0
mov edx, dword [0x45e898]
push edx
push 0
push 0x5000000b
push 0
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed7c], eax
mov eax, dword [0x45e898]
add eax, 4
mov dword [0x45e898], eax
cmp dword [0xae53ec], 0
jne 0x4033fa
mov esi, esp
push 0
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp edi, esp
call fcn.0041e9d0
push eax
push 0x416
mov ecx, dword [ebp + 8]
push ecx
push 2
push 0xa0
mov edx, dword [0x45e898]
push edx
push 0
push 0x50000010
push 0
push str.static
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp esi, esp
call fcn.0041e9d0
mov dword [0x45ed7c], eax
push edx
mov ecx, ebp
push eax
lea edx, [0x40342c]
call fcn.0041e970
pop eax
pop edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0041ea40
add esp, 0x688
cmp ebp, esp
call fcn.0041e9d0
mov esp, ebp
pop ebp
ret