Function at 0x40b1c0
Capabilities:
Get common file path
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x1184
call fcn.0041e5b0
mov eax, dword [0x426178]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 0x14]
xor esi, esi
push 0x148
lea edx, [ebp - 0x14c]
push esi
push edx
mov dword [ebp - 0x1174], eax
mov dword [ebp - 0x1168], ecx
mov dword [ebp - 0x117c], edi
mov dword [ebp - 0x116c], esi
mov dword [ebp - 0x1184], esi
mov dword [ebp - 0x1180], esi
mov dword [ebp - 0x1170], esi
call fcn.0041ae20
push 0x800
lea eax, [ebp - 0x94c]
push esi
push eax
call fcn.0041ae20
push 0x200
lea ecx, [ebp - 0xf5c]
push esi
push ecx
call fcn.0041ae20
mov eax, dword [ebx + 0x28]
add esp, 0x24
push 0x148
lea edx, [ebp - 0x14c]
push edx
push 0x1bc7
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x5c
call fcn.004144f2
mov esi, eax
add esp, 4
xor eax, eax
test esi, esi
mov dword [ebp - 0x1178], esi
je 0x40d415
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
mov byte [esi + 0x14], al
mov byte [esi + 0x15], al
mov byte [esi + 0x16], al
mov byte [esi + 0x17], al
mov byte [esi + 0x18], al
mov byte [esi + 0x19], al
mov byte [esi + 0x1a], al
mov byte [esi + 0x1b], al
mov eax, 0x4073cc
mov ecx, esi
sub ecx, eax
mov dword [esi + 0x10], 0x190
lea edx, [ecx + 0x1c]
lea ebx, [ebx]
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x40b2c0
push 0
lea edx, [ebp - 0x1170]
push edx
push 0x429790
call sub.WINSPOOL.DRV_OpenPrinterW
mov eax, dword [ebp - 0x1170]
test eax, eax
je 0x40b320
lea ecx, [ebp - 0x1180]
push ecx
push 0x1fe
push 0x42bea0
lea edx, [ebp - 0x1184]
push edx
push 0x4073f8
push 0x407418
push eax
call sub.WINSPOOL.DRV_GetPrinterDataExW
mov eax, dword [ebp - 0x1170]
push eax
call sub.WINSPOOL.DRV_ClosePrinter
push 0x40741c
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b356
jmp 0x40b340
movzx ecx, word [eax + 0x429790]
mov word [eax + 0x42bea0], cx
add eax, 2
test cx, cx
jne 0x40b340
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax]
add ecx, 0xffffc000
cmp ecx, 6
ja case.0x40b36d.16385
jmp dword [ecx*4 + 0x40d428]
cmp dword [eax + 0xc], 7
jne case.0x40b36d.16385
mov esi, dword [sym.imp.USER32.dll_GetParent]
push 3
push 0
push 0
push 0
push 0
mov ecx, eax
mov edx, dword [ecx + 4]
push 0xffffffffffffffff
push edx
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
push 0x43
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push ecx
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov edx, dword [edi + 0x228]
cmp dword [edx + edi + 0x1d8], 0
lea eax, [edx + edi]
jne 0x40c379
cmp dword [eax + 0x210], 0
jne 0x40c379
cmp dword [eax + 0x1dc], 0
jne 0x40c379
cmp dword [eax + 0x20c], 0
jne 0x40c379
cmp dword [eax + 0x1d0], 0
jne 0x40bfb4
cmp dword [eax + 0x1d4], 0
jne 0x40bfb4
cmp dword [eax + 0x1cc], 0
je 0x40b573
cmp dword [0x42be5c], 0
jne case.0x40b36d.16385
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b8c
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
xor eax, eax
lea esp, [esp]
movzx ecx, word [eax + 0x429790]
mov word [ebp + eax - 0x14c], cx
add eax, 2
test cx, cx
jne 0x40b470
lea eax, [ebp - 0x94c]
mov esi, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40b490
lea edi, [ebp - 0x14c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40b4a6
mov ebx, dword [ebp - 0x1168]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 4]
mov edi, dword [sym.imp.USER32.dll_GetParent]
lea eax, [ebp - 0x14c]
push eax
push ecx
call edi
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 4]
add esp, 0xc
lea eax, [ebp - 0x94c]
push eax
push 0
push 0xc
push 0x3f7
push ecx
call edi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call esi
mov eax, dword [ebx + 4]
lea edx, [ebp - 0x94c]
push edx
push 0
push 0xc
push 0x3f6
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call esi
push 0x1f40
mov dword [ebp - 0x116c], 1
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0040b170
mov ecx, dword [ebp - 0x1174]
mov edx, dword [ecx + 0x40]
push 0
push 1
push 0x111
push edx
call esi
jmp case.0x40b36d.16385
cmp dword [eax + 0x1e0], 0
jne 0x40bd19
cmp dword [eax + 0xf8], 0
jne 0x40bd19
cmp dword [0x42be5c], 0
jne 0x40b6bf
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b8c
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
xor eax, eax
lea ecx, [ecx]
movzx ecx, word [eax + 0x429790]
mov word [ebp + eax - 0x14c], cx
add eax, 2
test cx, cx
jne 0x40b5d0
lea eax, [ebp - 0x94c]
mov esi, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40b5f0
lea edi, [ebp - 0x14c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40b606
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
lea eax, [ebp - 0x14c]
push eax
push edx
call dword [sym.imp.USER32.dll_GetParent]
mov esi, dword [sym.imp.USER32.dll_GetParent]
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
add esp, 0xc
lea ecx, [ebp - 0x94c]
push ecx
push 0
push 0xc
push 0x3f7
push eax
call esi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
lea ecx, [ebp - 0x94c]
push ecx
push 0
push 0xc
push 0x3f6
push eax
call esi
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, dword [ebp - 0x117c]
mov dword [ebp - 0x116c], 1
cmp dword [0x42be94], 0
je 0x40b9ac
push 0x4034e0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x403490
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x403440
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x4033a0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x403350
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x4030b8
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x403068
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x4033f0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b8fb
push 0x403300
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x403260
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x403210
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x4032b0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x4031bc
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x403164
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
push 0x40310c
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40b86b
mov ecx, 0xc1fc
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov ecx, 0xc1fc
mov dword [eax], 0
call fcn.00409f70
mov dword [eax], 0
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
add esp, 0xc
push 0x3fe
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [ebx + 0x28]
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1bca
push edx
mov esi, eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x94c]
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc1fc
mov edx, edi
mov esi, ebx
mov dword [0x42be94], 0
call fcn.00409f70
mov ecx, 0xc1f8
mov dword [eax], 1
call fcn.00409f70
mov dword [eax], 0
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
add esp, 0xc
push 0x3fe
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [ebx + 0x28]
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b72
push edx
mov esi, eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x94c]
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc1f8
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov ecx, 0xc1fc
mov dword [eax], 1
call fcn.00409f70
mov edi, dword [ebp - 0x1168]
mov esi, dword [sym.imp.USER32.dll_GetParent]
mov dword [eax], 0
mov ecx, dword [edi + 4]
push 0x3fa
push ecx
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [edi + 4]
push 1
push 0xf060
push 0
push edx
jmp 0x40bc3f
cmp dword [0x42be98], 0
je 0x40bc57
push 0x4034e0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x403490
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x403440
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x4033a0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x403350
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x4030b8
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x403068
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x4033f0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bba5
push 0x403300
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x403260
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x403210
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x4032b0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x4031bc
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x403164
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40bb2b
push 0x40310c
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
je 0x40bd00
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
add esp, 0xc
push 0x3fe
push edx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ecx, dword [ebx + 0x28]
push 0x800
mov esi, eax
lea eax, [ebp - 0x94c]
push eax
push 0x1bca
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
lea edx, [ebp - 0x94c]
push edx
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc204
mov edx, edi
mov esi, ebx
mov dword [0x42be98], 0
call fcn.00409f70
jmp 0x40cf30
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
add esp, 0xc
push 0x3fe
push edx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ecx, dword [ebx + 0x28]
push 0x800
mov esi, eax
lea eax, [ebp - 0x94c]
push eax
push 0x1b71
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
lea edx, [ebp - 0x94c]
push edx
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc200
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov ecx, 0xc204
mov dword [eax], 1
call fcn.00409f70
mov esi, dword [sym.imp.USER32.dll_GetParent]
push 1
mov dword [eax], 0
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
push 0xf060
push 0
push ecx
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
push eax
call dword [sym.imp.USER32.dll_EnableMenuItem]
jmp case.0x40b36d.16385
mov ecx, 0xc204
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov ecx, 0xc204
mov dword [eax], 0
call fcn.00409f70
mov edx, dword [ebp - 0x1168]
mov dword [eax], 0
mov eax, dword [edx + 4]
push 0x3fe
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
mov esi, eax
call fcn.0041ae20
mov eax, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea edx, [ebp - 0x94c]
push edx
push 0x1bca
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [ebp - 0x94c]
push ecx
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, 1
mov dword [0x42be60], eax
mov dword [0x42be64], eax
mov dword [0x42be68], eax
mov dword [0x42be6c], eax
mov dword [0x42be70], eax
mov dword [0x42be74], eax
mov dword [0x42be78], eax
mov ecx, 0xc204
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov dword [eax], 0
jmp 0x40cf36
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b8c
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
call fcn.004114d0
cmp eax, 1
mov ecx, 0xc208
mov edx, edi
mov esi, ebx
jne 0x40bd6a
call fcn.00409f70
mov dword [eax], 1
jmp 0x40bd75
call fcn.00409f70
mov dword [eax], 2
xor eax, eax
jmp 0x40bd80
movzx ecx, word [eax + 0x429790]
mov word [ebp + eax - 0x14c], cx
add eax, 2
test cx, cx
jne 0x40bd80
lea eax, [ebp - 0x94c]
mov esi, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40bda0
lea edi, [ebp - 0x14c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40bdb6
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00411610
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
mov esi, dword [sym.imp.USER32.dll_GetParent]
lea edx, [ebp - 0x14c]
push edx
push ecx
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, dword [ebp - 0x117c]
mov edx, dword [eax + 0x228]
cmp dword [edx + eax + 0xf8], 0
je 0x40bfa5
cmp dword [0x42be5c], 0
jne case.0x40b36d.16385
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b74
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
lea esi, [ebp - 0xb54]
call fcn.00411020
mov eax, 0x429790
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40be62
lea edi, [ebp - 0xb54]
sub eax, edx
add edi, 0xfffffffe
jmp 0x40be80
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40be80
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xb54]
rep movsb byte es:[edi], byte [esi]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x40bea5
mov ecx, dword [0x407434]
mov edx, dword [0x407438]
mov dword [eax], ecx
mov cx, word [0x40743c]
mov dword [eax + 4], edx
lea edx, [ebp - 0xb54]
push edx
push 0x104
mov word [eax + 8], cx
lea eax, [ebp - 0xd5c]
push eax
push 0
push 0x407440
push 0x407454
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edi, [ebp - 0x94c]
add edi, 0xfffffffe
jmp 0x40bf00
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x40bf00
mov ecx, dword [0x40748c]
lea eax, [ebp - 0xd5c]
mov dword [edi], ecx
mov esi, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40bf20
lea edi, [ebp - 0x94c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40bf36
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x94c]
push edx
mov ecx, eax
mov eax, dword [ebp - 0x1168]
push 0
and ecx, 3
push 0xc
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [eax + 4]
push 0x3f7
push ecx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x116c], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je case.0x40b36d.16385
mov dword [ebp - 0x116c], 0
jmp case.0x40b36d.16385
mov dword [0x42be5c], 1
jmp case.0x40b36d.16385
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b8d
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
call fcn.004114d0
cmp eax, 1
mov ecx, 0xc208
mov edx, edi
mov esi, ebx
jne 0x40c005
call fcn.00409f70
mov dword [eax], 1
jmp 0x40c010
call fcn.00409f70
mov dword [eax], 2
xor eax, eax
jmp 0x40c020
movzx ecx, word [eax + 0x429790]
mov word [ebp + eax - 0x14c], cx
add eax, 2
test cx, cx
jne 0x40c020
lea eax, [ebp - 0x94c]
mov esi, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c040
lea edi, [ebp - 0x14c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c056
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00411610
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
mov esi, dword [sym.imp.USER32.dll_GetParent]
lea edx, [ebp - 0x14c]
push edx
push ecx
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b89
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
lea esi, [ebp - 0xb54]
call fcn.00411020
mov eax, 0x429790
mov ecx, eax
jmp 0x40c0e0
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x40c0e0
lea edi, [ebp - 0xb54]
sub eax, ecx
mov esi, ecx
add edi, 0xfffffffe
jmp 0x40c100
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c100
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xb54]
rep movsb byte es:[edi], byte [esi]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x40c123
mov edx, dword [0x407434]
mov ecx, dword [0x407438]
mov dword [eax], edx
mov dx, word [0x40743c]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [ebp - 0xb54]
push eax
push 0x104
lea ecx, [ebp - 0xd5c]
push ecx
push 0
push 0x407440
push 0x407454
mov dword [0x42be5c], 1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0xd5c]
mov esi, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c182
lea edi, [ebp - 0x94c]
sub eax, esi
add edi, 0xfffffffe
jmp 0x40c1a0
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c1a0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x94c]
push edx
mov ecx, eax
mov eax, dword [ebp - 0x1168]
push 0
and ecx, 3
push 0xc
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [eax + 4]
push 0x3f7
push ecx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b87
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
lea esi, [ebp - 0xb54]
call fcn.00411020
mov eax, 0x429790
mov ecx, eax
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x40c231
lea edi, [ebp - 0xb54]
sub eax, ecx
mov esi, ecx
add edi, 0xfffffffe
lea esp, [esp]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c250
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xb54]
rep movsb byte es:[edi], byte [esi]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x40c273
mov edx, dword [0x407434]
mov ecx, dword [0x407438]
mov dword [eax], edx
mov dx, word [0x40743c]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [ebp - 0xb54]
push eax
push 0x104
lea ecx, [ebp - 0xd5c]
push ecx
push 0
push 0x40746c
push 0x407454
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edi, [ebp - 0x94c]
add edi, 0xfffffffe
lea esp, [esp]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x40c2d0
mov edx, dword [0x40748c]
lea eax, [ebp - 0xd5c]
mov dword [edi], edx
mov esi, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c2f0
lea edi, [ebp - 0x94c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c306
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [ebp - 0x94c]
push eax
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
push 0xc
push 0x3f6
push edx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
mov dword [ebp - 0x116c], 1
call fcn.0041ae20
add esp, 0xc
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov eax, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea edx, [ebp - 0x94c]
push edx
push 0x1b8e
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
xor eax, eax
lea esp, [esp]
movzx ecx, word [eax + 0x429790]
mov word [ebp + eax - 0x14c], cx
add eax, 2
test cx, cx
jne 0x40c3b0
lea eax, [ebp - 0x94c]
mov esi, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c3d0
lea edi, [ebp - 0x14c]
sub eax, esi
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c3e6
mov edx, dword [ebp - 0x1168]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [edx + 4]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x14c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov esi, dword [sym.imp.USER32.dll_GetParent]
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
add esp, 0xc
lea edx, [ebp - 0x94c]
push edx
push 0
push 0xc
push 0x3f7
push ecx
call esi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x94c]
push edx
push 0
push 0xc
push 0x3f6
push ecx
call esi
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [ebp - 0x1178]
mov edi, dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push esi
mov dword [0x42be5c], 1
mov dword [esi], 0xe
mov dword [esi + 4], 5
mov dword [esi + 0x10], 0x2bc
call edi
push esi
mov dword [0x42be8c], eax
call edi
mov dword [0x42be88], eax
mov eax, dword [0x42be8c]
test eax, eax
je 0x40c523
mov edx, dword [ebp - 0x1168]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
mov eax, dword [edx + 4]
push 0x30
push 0x3f1
push eax
call esi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call edi
mov eax, dword [0x42be88]
test eax, eax
je 0x40c519
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
push 0
push eax
push 0x30
push 0x3f2
push edx
call esi
push eax
call edi
mov dword [ebp - 0x116c], 1
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b88
push edx
call esi
push 0x200
lea eax, [ebp - 0xf5c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x200
lea ecx, [ebp - 0xf5c]
push ecx
push 0x1b58
push edx
call esi
lea esi, [ebp - 0xb54]
call fcn.00411020
mov eax, 0x429790
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c595
lea edi, [ebp - 0xb54]
sub eax, edx
add edi, 0xfffffffe
jmp 0x40c5b0
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c5b0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xb54]
rep movsb byte es:[edi], byte [esi]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x40c5d5
mov ecx, dword [0x407434]
mov edx, dword [0x407438]
mov dword [eax], ecx
mov cx, word [0x40743c]
mov dword [eax + 4], edx
lea edx, [ebp - 0xb54]
push edx
push 0x104
mov word [eax + 8], cx
lea eax, [ebp - 0xd5c]
push eax
push 0
push 0x407440
push 0x407454
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0xf5c]
mov edx, eax
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c630
lea edi, [ebp - 0x94c]
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c646
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xd5c]
rep movsb byte es:[edi], byte [esi]
mov edx, eax
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40c670
lea edi, [ebp - 0x94c]
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40c686
mov ecx, eax
shr ecx, 2
mov esi, edx
mov edx, dword [ebp - 0x1168]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [edx + 4]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x94c]
push ecx
push 0
push 0xc
push 0x3ea
push eax
jmp 0x40d3ec
mov eax, dword [eax + 0xc]
sub eax, 2
jne case.0x40b36d.16385
push 0x800
push eax
lea ecx, [ebp - 0x94c]
push ecx
call fcn.0041ae20
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
add esp, 0xc
push 0x407490
lea edx, [ebp - 0x1164]
push edx
call edi
mov esi, 0x42b228
call fcn.00410f50
call fcn.004114d0
cmp eax, 1
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
jne 0x40c720
push 0x4074cc
lea eax, [ebp - 0x94c]
push eax
call esi
jmp 0x40c73b
mov edx, dword [ebx + 0x28]
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x2bc
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x94c]
push eax
push 0x42b228
call esi
push 0x42b228
lea ecx, [ebp - 0x1164]
push ecx
call esi
push 0x208
push 0
push 0x42b430
call fcn.0041ae20
add esp, 0xc
push 0x208
push 0x42b430
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 0x4074e4
push 0x42b430
call esi
lea edx, [ebp - 0x1164]
push edx
push 0x42b020
call edi
push 0
push 0x42b020
push 0x407500
push 0x42b430
push 1
call fcn.004145c1
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
mov dword [ebp - 0x116c], 1
call fcn.0041ae20
add esp, 0x20
jmp case.0x40b36d.16385
mov eax, dword [eax + 0xc]
sub eax, 2
jne case.0x40b36d.16385
cmp dword [0x42be94], eax
jne 0x40c7f2
cmp dword [0x42be98], eax
je 0x40c875
cmp dword [0x42be9c], 0
jne 0x40c811
push 0x104
call fcn.004144f2
add esp, 4
test eax, eax
mov dword [0x42be9c], eax
je 0x40c875
call fcn.004110f0
mov ecx, dword [0x42be9c]
push 0
push 0
push 3
push 0
push 1
push 0xc0000000
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
test eax, eax
mov dword [ebp - 0x1170], eax
je 0x40c84f
mov esi, eax
call fcn.00411350
mov edx, dword [ebp - 0x1170]
push edx
call sub.WINSPOOL.DRV_ClosePrinter
mov eax, dword [0x42be9c]
xor esi, esi
cmp eax, esi
mov dword [0x42be94], esi
mov dword [0x42be98], esi
je 0x40c875
push eax
call fcn.0041440b
add esp, 4
mov dword [0x42be9c], esi
mov eax, dword [ebp - 0x1174]
mov ecx, dword [eax + 0x40]
push 0
push 1
push 0x111
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x42be90]
test eax, eax
je 0x40c8a0
push eax
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [0x42be7c]
test eax, eax
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
je 0x40c8b2
push eax
call esi
mov eax, dword [0x42be84]
test eax, eax
je 0x40c8be
push eax
call esi
mov eax, dword [0x42be80]
test eax, eax
je 0x40c8ca
push eax
call esi
mov eax, dword [0x42be88]
test eax, eax
je 0x40c8d6
push eax
call esi
mov eax, dword [0x42be8c]
test eax, eax
je 0x40c8e2
push eax
call esi
call fcn.00411610
mov dword [ebp - 0x116c], 1
jmp case.0x40b36d.16385
cmp dword [eax + 0xc], 0xb
jne case.0x40b36d.16385
mov edx, dword [edi + 0x228]
cmp dword [edx + edi + 0x1d8], 0
lea eax, [edx + edi]
jne 0x40d159
cmp dword [eax + 0x210], 0
jne 0x40d159
cmp dword [eax + 0x1dc], 0
jne 0x40d159
cmp dword [eax + 0x20c], 0
jne 0x40d159
cmp dword [eax + 0x1d0], 0
jne 0x40d03f
cmp dword [eax + 0x1d4], 0
jne 0x40d03f
cmp dword [eax + 0x1cc], 0
je 0x40c9a9
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b8c
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x429790
lea eax, [ebp - 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x40cffe
cmp dword [eax + 0x1e0], 0
jne 0x40cfcd
cmp dword [eax + 0xf8], 0
jne 0x40cfcd
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b8c
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x429790
lea eax, [ebp - 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea ecx, [ebp - 0x94c]
push ecx
lea edx, [ebp - 0x14c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
mov esi, dword [sym.imp.USER32.dll_GetParent]
lea eax, [ebp - 0x14c]
push eax
push edx
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
cmp dword [0x42be94], 0
mov dword [ebp - 0x116c], 1
je 0x40cd2a
push 0x4034e0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x403490
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x403440
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x4033a0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x403350
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x4030b8
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x403068
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x4033f0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc6b
push 0x403300
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x403260
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x403210
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x4032b0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x4031bc
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x403164
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x40310c
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cc0d
push 0x800
push eax
lea eax, [ebp - 0x94c]
push eax
call fcn.0041ae20
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
add esp, 0xc
push 0x3fe
push edx
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1bca
jmp 0x40cc4e
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
add esp, 0xc
push 0x3fa
push edx
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b6d
mov ecx, dword [ebx + 0x28]
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
lea edx, [ebp - 0x94c]
push edx
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp case.0x40b36d.16385
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
add esp, 0xc
push 0x3fe
push edx
call esi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call edi
mov ecx, dword [ebx + 0x28]
push 0x800
mov dword [ebp - 0x1174], eax
lea eax, [ebp - 0x94c]
push eax
push 0x1b72
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
mov eax, dword [ebp - 0x1174]
lea edx, [ebp - 0x94c]
push edx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
push 0x3fa
push edx
call esi
push eax
call edi
push 0x800
mov esi, eax
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x200
lea ecx, [ebp - 0xf5c]
push ecx
push 0x1b6f
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0xf5c]
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp case.0x40b36d.16385
cmp dword [0x42be98], 0
je case.0x40b36d.16385
push 0x4034e0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x403490
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x403440
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x4033a0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x403350
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x4030b8
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x403068
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x4033f0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cf4b
push 0x403300
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x403260
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x403210
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x4032b0
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x4031bc
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x403164
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
push 0x40310c
push 0x42bea0
call fcn.00414617
add esp, 8
test eax, eax
jne 0x40cebf
mov ecx, 0xc204
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov dword [eax], 0
jmp 0x40cf36
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
add esp, 0xc
push 0x3fe
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [ebx + 0x28]
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1bca
push edx
mov esi, eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x94c]
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc204
mov edx, edi
mov esi, ebx
mov dword [0x42be98], 0
call fcn.00409f70
mov dword [eax], 1
mov ecx, 0xc200
call fcn.00409f70
mov dword [eax], 0
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov edx, dword [ebp - 0x1168]
mov eax, dword [edx + 4]
add esp, 0xc
push 0x3fe
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [ebx + 0x28]
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b71
push edx
mov esi, eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x94c]
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 0xc200
mov edx, edi
mov esi, ebx
call fcn.00409f70
mov ecx, 0xc204
mov dword [eax], 1
call fcn.00409f70
mov dword [eax], 0
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov eax, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea edx, [ebp - 0x94c]
push edx
push 0x1b8c
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [ebp - 0x94c]
push ecx
lea edx, [ebp - 0x14c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
lea eax, [ebp - 0x14c]
push eax
push edx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov dword [ebp - 0x116c], 1
jmp case.0x40b36d.16385
push esi
mov dword [esi], 0x12
mov dword [esi + 4], 5
mov dword [esi + 0x10], 0x2bc
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push esi
mov dword [0x42be88], eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [0x42be8c], eax
call fcn.004114d0
cmp eax, 1
mov ecx, 0xc208
mov edx, edi
mov esi, ebx
jne 0x40d08b
call fcn.00409f70
mov dword [eax], 1
jmp 0x40d096
call fcn.00409f70
mov dword [eax], 2
call fcn.00411610
push 0x800
lea eax, [ebp - 0x94c]
push 0
push eax
call fcn.0041ae20
mov edx, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x94c]
push ecx
push 0x1b8d
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x429790
lea eax, [ebp - 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea ecx, [ebp - 0x94c]
push ecx
lea edx, [ebp - 0x14c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [0x42be88]
test eax, eax
mov esi, dword [ebp - 0x1168]
je 0x40d13c
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
mov eax, dword [esi + 4]
push 0x30
push 0x3f2
push eax
call edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call ebx
mov eax, dword [0x42be8c]
test eax, eax
je 0x40d13c
mov ecx, dword [esi + 4]
push 0
push eax
push 0x30
push 0x3f1
push ecx
call edi
push eax
call ebx
mov eax, dword [esi + 4]
lea edx, [ebp - 0x14c]
push edx
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp case.0x40b36d.16385
push 0x800
lea ecx, [ebp - 0x94c]
push 0
push ecx
call fcn.0041ae20
mov eax, dword [ebx + 0x28]
add esp, 0xc
push 0x800
lea edx, [ebp - 0x94c]
push edx
push 0x1b8e
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
push 0x429790
lea ecx, [ebp - 0x14c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea edx, [ebp - 0x94c]
push edx
lea eax, [ebp - 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov edi, dword [sym.imp.GDI32.dll_CreateFontIndirectW]
push esi
mov dword [esi], 0xe
mov dword [esi + 4], 5
mov dword [esi + 0x10], 0x2bc
call edi
push esi
mov dword [0x42be8c], eax
call edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [0x42be88], eax
mov eax, dword [0x42be8c]
test eax, eax
je 0x40d22a
mov ecx, dword [ebp - 0x1168]
mov edx, dword [ecx + 4]
push 0
push eax
push 0x30
push 0x3f1
push edx
call edi
push eax
call esi
mov eax, dword [0x42be88]
test eax, eax
je 0x40d22a
push 0
push eax
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
push 0x30
push 0x3f2
push ecx
call edi
push eax
call esi
mov eax, dword [ebp - 0x1168]
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x14c]
push edx
push ecx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x800
lea edx, [ebp - 0x94c]
push 0
push edx
mov dword [ebp - 0x116c], 1
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
add esp, 0xc
push 0x800
lea eax, [ebp - 0x94c]
push eax
push 0x1b88
push ecx
call esi
push 0x200
lea edx, [ebp - 0xf5c]
push 0
push edx
call fcn.0041ae20
mov ecx, dword [ebx + 0x28]
add esp, 0xc
push 0x200
lea eax, [ebp - 0xf5c]
push eax
push 0x1b58
push ecx
call esi
lea esi, [ebp - 0xb54]
call fcn.00411020
mov eax, 0x429790
mov ecx, eax
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x40d2c4
lea edi, [ebp - 0xb54]
sub eax, ecx
mov esi, ecx
add edi, 0xfffffffe
lea esp, [esp]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40d2e0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xb54]
rep movsb byte es:[edi], byte [esi]
add eax, 0xfffffffe
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x40d303
mov edx, dword [0x407434]
mov ecx, dword [0x407438]
mov dword [eax], edx
mov dx, word [0x40743c]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [ebp - 0xb54]
push eax
push 0x104
lea ecx, [ebp - 0xd5c]
push ecx
push 0
push 0x407440
push 0x407454
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0xf5c]
mov edx, eax
jmp 0x40d360
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40d360
lea edi, [ebp - 0x94c]
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40d376
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [ebp - 0xd5c]
rep movsb byte es:[edi], byte [esi]
mov edx, eax
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40d3a0
lea edi, [ebp - 0x94c]
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x40d3b6
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x94c]
push edx
mov ecx, eax
mov eax, dword [ebp - 0x1168]
push 0
and ecx, 3
push 0xc
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [eax + 4]
push 0x3ea
push ecx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x1178]
push edx
call fcn.0041440b
mov eax, dword [ebp - 0x116c]
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004143f7
mov esp, ebp
pop ebp
ret 0x10