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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x462578
push eax
mov dword fs:[0], esp
sub esp, 0x644
push ebx
push ebp
mov ebp, ecx
xor ebx, ebx
push esi
push edi
cmp dword [ebp + 0x1460], ebx
je 0x41bfc4
mov eax, dword [ebp + 4]
mov esi, dword [sym.imp.USER32.dll_SetTimer]
push ebx
push 0x1388
push 8
push eax
call esi
mov ecx, dword [ebp + 4]
push ebx
push 0x64
push 3
push ecx
call esi
mov eax, 1
jmp 0x41d408
mov edx, dword [ebp + 0x144c]
mov eax, dword [edx - 8]
cmp eax, ebx
je 0x41d36f
mov eax, dword [0x46f42c]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
xor eax, eax
lea ecx, [esp + 0x58]
mov dword [esp + 0x66], eax
lea esi, [ebp + 0x20]
mov dword [esp + 0x6a], eax
push ecx
mov dword [esp + 0x72], eax
mov ecx, esi
mov dword [esp + 0x76], eax
mov dword [esp + 0x660], ebx
mov dword [esp + 0x44], ebx
mov word [esp + 0x68], bx
mov word [esp + 0x7a], ax
call fcn.004423c0
mov eax, dword [0x46f42c]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov ecx, esi
mov byte [esp + 0x65c], 1
call fcn.00442b90
mov ecx, esi
mov dword [esp + 0x3c], eax
call fcn.00442150
mov edx, dword [ebp + 4]
push ebx
push 0x1388
push 8
push edx
mov esi, eax
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [esp + 0x60]
cmp eax, 6
jl 0x41d108
cmp esi, ebx
jne 0x41d108
mov dword [ebp + 0x1460], 1
mov eax, dword [0x46f42c]
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], eax
mov eax, dword [0x47a158]
mov edi, dword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [esp + 0x78]
push 0x100
mov eax, dword [eax + 8]
push ecx
push 0x100
push eax
mov byte [esp + 0x66c], 3
call edi
cmp eax, ebx
jne 0x41c0c8
mov word [esp + 0x78], bx
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x41c0e4
lea eax, [esp + 0x78]
lea ecx, [esp + 0x44]
push eax
call fcn.00407430
jmp 0x41c132
push 0x1ff
lea ecx, [esp + 0x48]
mov esi, 0x200
call fcn.00407e80
cmp eax, ebx
je 0x41c127
push esi
push eax
push 0x100
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c127
add esi, 0x100
lea ecx, [esp + 0x44]
lea edx, [esi - 1]
push edx
call fcn.00407e80
cmp eax, ebx
jne 0x41c0fb
push 0xffffffffffffffff
lea ecx, [esp + 0x48]
call fcn.00407f40
mov ecx, dword [esp + 0x58]
mov eax, dword [ebp + 0x144c]
mov esi, dword [esp + 0x44]
lea ebx, [ebp + 0x144c]
push ecx
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea edx, [esp + 0x50]
push esi
push edx
call fcn.004076f0
mov eax, dword [esp + 0x4c]
add esp, 0x10
cmp eax, 7
mov dword [ebp + 0x1464], 1
ja case.0x41c174.3
jmp dword [eax*4 + 0x41d424]
mov dword [ebp + 0x145c], 1
mov ecx, dword [0x47a158]
xor esi, esi
lea edx, [esp + 0x78]
mov dword [esp + 0x30], esi
mov eax, dword [ecx + 8]
push 0x100
push edx
push 0xfc
push eax
call edi
cmp eax, esi
jne 0x41c1af
mov word [esp + 0x78], si
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c1cb
lea edx, [esp + 0x78]
lea ecx, [esp + 0x14]
push edx
call fcn.00407430
jmp 0x41c219
push 0x1ff
lea ecx, [esp + 0x18]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c20e
push esi
push eax
push 0xfc
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c20e
add esi, 0x100
lea ecx, [esp + 0x14]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c1e2
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.00407f40
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
mov eax, 0x4737d4
test eax, eax
jne 0x41c22c
xor eax, eax
jmp 0x41c233
push 0x4737d4
call edi
push 0x4737d4
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x48]
cmp eax, ecx
je 0x41c294
mov edx, dword [eax - 0xc]
test edx, edx
jge 0x41c262
mov edx, dword [0x46f430]
add eax, 0xfffffff4
cmp eax, edx
jne 0x41c269
mov eax, dword [ecx - 0xc]
test eax, eax
jge 0x41c279
push ecx
mov ecx, dword [ecx - 8]
push ecx
lea ecx, [esp + 0x24]
call fcn.004080a0
jmp 0x41c294
lea ecx, [esp + 0x1c]
call fcn.004083e0
mov eax, dword [esp + 0x48]
mov dword [esp + 0x1c], eax
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
lea edx, [esp + 0x78]
push 0x100
push edx
push 0xfe
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c2d8
lea edx, [esp + 0x78]
test edx, edx
jne 0x41c2c0
xor eax, eax
jmp 0x41c2c7
lea eax, [esp + 0x78]
push eax
call edi
lea ecx, [esp + 0x78]
push ecx
push eax
lea ecx, [esp + 0x30]
call fcn.004080a0
jmp 0x41c326
push 0x1ff
lea ecx, [esp + 0x2c]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c31b
push esi
push eax
push 0xfe
call fcn.00408450
mov edx, esi
sub edx, eax
cmp edx, 1
jg 0x41c31b
add esi, 0x100
lea ecx, [esp + 0x28]
lea eax, [esi - 1]
push eax
call fcn.00407e80
test eax, eax
jne 0x41c2ef
push 0xffffffffffffffff
lea ecx, [esp + 0x2c]
call fcn.00407f40
lea ecx, [esp + 0x78]
push 0x100
push ecx
push 0xfa
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x41c366
lea eax, [esp + 0x78]
test eax, eax
je 0x41c355
lea ecx, [esp + 0x78]
push ecx
call edi
lea edx, [esp + 0x78]
lea ecx, [esp + 0x20]
push edx
push eax
call fcn.004080a0
jmp 0x41c3b4
push 0x1ff
lea ecx, [esp + 0x24]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c3a9
push esi
push eax
push 0xfa
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c3a9
add esi, 0x100
lea ecx, [esp + 0x20]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c37d
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfb
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c3f8
lea edx, [esp + 0x78]
test edx, edx
jne 0x41c3e0
xor eax, eax
jmp 0x41c3e7
lea eax, [esp + 0x78]
push eax
call edi
lea ecx, [esp + 0x78]
push ecx
push eax
lea ecx, [esp + 0x2c]
call fcn.004080a0
jmp 0x41c446
push 0x1ff
lea ecx, [esp + 0x28]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c43b
push esi
push eax
push 0xfb
call fcn.00408450
mov edx, esi
sub edx, eax
cmp edx, 1
jg 0x41c43b
add esi, 0x100
lea ecx, [esp + 0x24]
lea eax, [esi - 1]
push eax
call fcn.00407e80
test eax, eax
jne 0x41c40f
push 0xffffffffffffffff
lea ecx, [esp + 0x28]
call fcn.00407f40
mov eax, 1
mov dword [esp + 0x2c], 2
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
jmp 0x41ccdf
lea ecx, [esp + 0x64]
push 0xa
push ecx
push 1
call fcn.004560cb
mov eax, dword [ebp + 0xa70]
add esp, 8
mov dword [esp + 0x44], esp
mov edi, esp
mov ecx, dword [eax - 0xc]
test ecx, ecx
jl 0x41c492
mov dword [edi], eax
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x41c4b8
mov edx, dword [0x46f42c]
mov dword [edi], edx
mov esi, dword [ebp + 0xa70]
test esi, esi
jne 0x41c4a8
xor eax, eax
jmp 0x41c4af
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push esi
push eax
mov ecx, edi
call fcn.004080a0
push ecx
lea eax, [esp + 0x6c]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
mov byte [esp + 0x668], 4
call fcn.00407200
push ecx
mov byte [esp + 0x668], 5
mov ecx, esp
mov dword [esp + 0x60], esp
push ebx
call fcn.00407110
push ecx
lea edx, [ebp + 0xa74]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
mov byte [esp + 0x670], 6
call fcn.00407110
mov ecx, 0x47b738
mov byte [esp + 0x66c], 3
call fcn.00447360
mov dword [ebp + 0xa44], 0
mov dword [ebp + 0x1454], 1
mov eax, dword [ebp + 4]
push 0
push 0x64
push 3
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [esp + 0x44]
mov edx, dword [0x46f430]
mov esi, dword [ebp + 0x1460]
mov edi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x41c56e
add eax, 0xfffffff4
push eax
call edi
test eax, eax
jg 0x41c56e
mov edx, dword [esp + 0x44]
lea eax, [edx - 0xc]
push eax
call fcn.004535f0
add esp, 4
mov eax, dword [esp + 0x48]
mov edx, dword [0x46f430]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x41c599
add eax, 0xfffffff4
push eax
call edi
test eax, eax
jg 0x41c599
mov edx, dword [esp + 0x48]
lea eax, [edx - 0xc]
push eax
call fcn.004535f0
add esp, 4
lea ecx, [esp + 0x28]
mov byte [esp + 0x65c], 0
call fcn.00408010
lea ecx, [esp + 0x24]
call fcn.00408010
lea ecx, [esp + 0x20]
call fcn.00408010
lea ecx, [esp + 0x1c]
call fcn.00408010
lea ecx, [esp + 0x18]
call fcn.00408010
lea ecx, [esp + 0x14]
call fcn.00408010
lea ecx, [esp + 0x10]
call fcn.00408010
lea ecx, [esp + 0x5c]
mov dword [esp + 0x65c], 0xffffffff
call fcn.00408010
lea ecx, [esp + 0x58]
call fcn.00408010
mov eax, esi
jmp 0x41d408
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfc
mov dword [esp + 0x3c], 0
call fcn.00408450
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c656
lea edx, [esp + 0x78]
test edx, edx
jne 0x41c63e
xor eax, eax
jmp 0x41c645
lea eax, [esp + 0x78]
push eax
call edi
lea ecx, [esp + 0x78]
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.004080a0
jmp 0x41c6a4
push 0x1ff
lea ecx, [esp + 0x18]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c699
push esi
push eax
push 0xfc
call fcn.00408450
mov edx, esi
sub edx, eax
cmp edx, 1
jg 0x41c699
add esi, 0x100
lea ecx, [esp + 0x14]
lea eax, [esi - 1]
push eax
call fcn.00407e80
test eax, eax
jne 0x41c66d
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.00407f40
mov ecx, 0x4737c4
test ecx, ecx
jne 0x41c6b1
xor eax, eax
jmp 0x41c6b8
push 0x4737c4
call edi
push 0x4737c4
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
lea edx, [esp + 0x78]
push 0x100
push edx
push 0xff
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c70b
lea edx, [esp + 0x78]
test edx, edx
jne 0x41c6f3
xor eax, eax
jmp 0x41c6fa
lea eax, [esp + 0x78]
push eax
call edi
lea ecx, [esp + 0x78]
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.004080a0
jmp 0x41c759
push 0x1ff
lea ecx, [esp + 0x20]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c74e
push esi
push eax
push 0xff
call fcn.00408450
mov edx, esi
sub edx, eax
cmp edx, 1
jg 0x41c74e
add esi, 0x100
lea ecx, [esp + 0x1c]
lea eax, [esi - 1]
push eax
call fcn.00407e80
test eax, eax
jne 0x41c722
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
call fcn.00407f40
lea ecx, [esp + 0x78]
push 0x100
push ecx
push 0xfa
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x41c789
lea eax, [esp + 0x78]
lea ecx, [esp + 0x20]
push eax
call fcn.00407430
jmp 0x41c7d7
push 0x1ff
lea ecx, [esp + 0x24]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c7cc
push esi
push eax
push 0xfa
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c7cc
add esi, 0x100
lea ecx, [esp + 0x20]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c7a0
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfb
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c80a
lea edx, [esp + 0x78]
lea ecx, [esp + 0x24]
push edx
call fcn.00407430
jmp 0x41ca88
push 0x1ff
lea ecx, [esp + 0x28]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c84d
push esi
push eax
push 0xfb
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c84d
add esi, 0x100
lea ecx, [esp + 0x24]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c821
push 0xffffffffffffffff
lea ecx, [esp + 0x28]
call fcn.00407f40
jmp 0x41ca88
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfc
mov dword [esp + 0x3c], 0
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c895
lea edx, [esp + 0x78]
lea ecx, [esp + 0x14]
push edx
call fcn.00407430
jmp 0x41c8e3
push 0x1ff
lea ecx, [esp + 0x18]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c8d8
push esi
push eax
push 0xfc
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c8d8
add esi, 0x100
lea ecx, [esp + 0x14]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c8ac
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.00407f40
mov eax, 0x4737bc
test eax, eax
je 0x41c8f7
push 0x4737bc
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x4737bc
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
lea ecx, [esp + 0x78]
push 0x100
push ecx
push 0xfd
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x41c936
lea eax, [esp + 0x78]
lea ecx, [esp + 0x1c]
push eax
call fcn.00407430
jmp 0x41c984
push 0x1ff
lea ecx, [esp + 0x20]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c979
push esi
push eax
push 0xfd
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c979
add esi, 0x100
lea ecx, [esp + 0x1c]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c94d
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfa
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41c9b4
lea edx, [esp + 0x78]
lea ecx, [esp + 0x20]
push edx
call fcn.00407430
jmp 0x41ca02
push 0x1ff
lea ecx, [esp + 0x24]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41c9f7
push esi
push eax
push 0xfa
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41c9f7
add esi, 0x100
lea ecx, [esp + 0x20]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41c9cb
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfb
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41ca32
lea edx, [esp + 0x78]
lea ecx, [esp + 0x24]
push edx
call fcn.00407430
jmp 0x41ca80
push 0x1ff
lea ecx, [esp + 0x28]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41ca75
push esi
push eax
push 0xfb
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41ca75
add esi, 0x100
lea ecx, [esp + 0x24]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41ca49
push 0xffffffffffffffff
lea ecx, [esp + 0x28]
call fcn.00407f40
mov dword [esp + 0x2c], 2
mov eax, 1
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
jmp 0x41ccdf
xor eax, eax
push 0x100
mov dword [esp + 0x40], eax
mov dword [esp + 0x34], eax
lea eax, [esp + 0x7c]
push eax
push 0xfc
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41cadc
lea edx, [esp + 0x78]
lea ecx, [esp + 0x14]
push edx
call fcn.00407430
jmp 0x41cb2a
push 0x1ff
lea ecx, [esp + 0x18]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41cb1f
push esi
push eax
push 0xfc
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41cb1f
add esi, 0x100
lea ecx, [esp + 0x14]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41caf3
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.00407f40
mov eax, 0x4737d4
test eax, eax
je 0x41cb3e
push 0x4737d4
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x4737d4
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
lea ecx, [esp + 0x78]
push 0x100
push ecx
push 0xff
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, 1
jle 0x41cb7d
lea eax, [esp + 0x78]
lea ecx, [esp + 0x1c]
push eax
call fcn.00407430
jmp 0x41cbcb
push 0x1ff
lea ecx, [esp + 0x20]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41cbc0
push esi
push eax
push 0xff
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41cbc0
add esi, 0x100
lea ecx, [esp + 0x1c]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41cb94
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfa
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41cbfb
lea edx, [esp + 0x78]
lea ecx, [esp + 0x20]
push edx
call fcn.00407430
jmp 0x41cc49
push 0x1ff
lea ecx, [esp + 0x24]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41cc3e
push esi
push eax
push 0xfa
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41cc3e
add esi, 0x100
lea ecx, [esp + 0x20]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41cc12
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.00407f40
lea eax, [esp + 0x78]
push 0x100
push eax
push 0xfb
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, 1
jle 0x41cc79
lea edx, [esp + 0x78]
lea ecx, [esp + 0x24]
push edx
call fcn.00407430
jmp 0x41ccc7
push 0x1ff
lea ecx, [esp + 0x28]
mov esi, 0x200
call fcn.00407e80
test eax, eax
je 0x41ccbc
push esi
push eax
push 0xfb
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, 1
jg 0x41ccbc
add esi, 0x100
lea ecx, [esp + 0x24]
lea edx, [esi - 1]
push edx
call fcn.00407e80
test eax, eax
jne 0x41cc90
push 0xffffffffffffffff
lea ecx, [esp + 0x28]
call fcn.00407f40
mov dword [esp + 0x2c], 2
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 1
mov eax, dword [0x46f42c]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x4c]
push ecx
push 0x473778
push edx
mov byte [esp + 0x668], 7
call fcn.004076f0
add esp, 0xc
lea ecx, [esp + 0x478]
call fcn.0040f3b0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x478]
push eax
mov byte [esp + 0x660], 8
call fcn.0040f980
mov ecx, dword [ebp + 0x145c]
mov esi, dword [ebp + 4]
lea edx, [esp + 0x478]
lea eax, [esp + 0x480]
push edx
push eax
push 0x47b7a0
mov dword [esp + 0x65c], ecx
call fcn.00408f60
mov eax, dword [0x47b7a8]
xor ebx, ebx
push ebx
push 0x4096e0
push esi
push 0xf8
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamW]
mov edi, 1
cmp eax, edi
jne 0x41d021
cmp dword [esp + 0x40], ebx
je 0x41d027
lea ecx, [esp + 0x278]
push 0x100
push ecx
push 0x101
mov dword [esp + 0x3c], ebx
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, edi
jle 0x41cdc0
lea eax, [esp + 0x278]
lea ecx, [esp + 0x14]
push eax
call fcn.00407430
jmp 0x41ce0d
push 0x1ff
lea ecx, [esp + 0x18]
mov esi, 0x200
call fcn.00407e80
cmp eax, ebx
je 0x41ce02
push esi
push eax
push 0x101
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, edi
jg 0x41ce02
add esi, 0x100
lea ecx, [esp + 0x14]
lea edx, [esi - 1]
push edx
call fcn.00407e80
cmp eax, ebx
jne 0x41cdd7
push 0xffffffffffffffff
lea ecx, [esp + 0x18]
call fcn.00407f40
mov eax, 0x47a15c
test eax, eax
je 0x41ce21
push 0x47a15c
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x47a15c
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
lea ecx, [esp + 0x278]
push 0x100
push ecx
push 0x102
call fcn.00408450
mov edx, 0x100
sub edx, eax
cmp edx, edi
jle 0x41ce65
lea eax, [esp + 0x278]
lea ecx, [esp + 0x1c]
push eax
call fcn.00407430
jmp 0x41ceb2
push 0x1ff
lea ecx, [esp + 0x20]
mov esi, 0x200
call fcn.00407e80
cmp eax, ebx
je 0x41cea7
push esi
push eax
push 0x102
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, edi
jg 0x41cea7
add esi, 0x100
lea ecx, [esp + 0x1c]
lea edx, [esi - 1]
push edx
call fcn.00407e80
cmp eax, ebx
jne 0x41ce7c
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
call fcn.00407f40
lea eax, [esp + 0x278]
push 0x100
push eax
push 0xfe
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, edi
jle 0x41cee7
lea edx, [esp + 0x278]
lea ecx, [esp + 0x28]
push edx
call fcn.00407430
jmp 0x41cf34
push 0x1ff
lea ecx, [esp + 0x2c]
mov esi, 0x200
call fcn.00407e80
cmp eax, ebx
je 0x41cf29
push esi
push eax
push 0xfe
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, edi
jg 0x41cf29
add esi, 0x100
lea ecx, [esp + 0x28]
lea edx, [esi - 1]
push edx
call fcn.00407e80
cmp eax, ebx
jne 0x41cefe
push 0xffffffffffffffff
lea ecx, [esp + 0x2c]
call fcn.00407f40
lea eax, [esp + 0x278]
push 0x100
push eax
push 0x106
call fcn.00408450
mov ecx, 0x100
sub ecx, eax
cmp ecx, edi
jle 0x41cf69
lea edx, [esp + 0x278]
lea ecx, [esp + 0x20]
push edx
call fcn.00407430
jmp 0x41cfb6
push 0x1ff
lea ecx, [esp + 0x24]
mov esi, 0x200
call fcn.00407e80
cmp eax, ebx
je 0x41cfab
push esi
push eax
push 0x106
call fcn.00408450
mov ecx, esi
sub ecx, eax
cmp ecx, edi
jg 0x41cfab
add esi, 0x100
lea ecx, [esp + 0x20]
lea edx, [esi - 1]
push edx
call fcn.00407e80
cmp eax, ebx
jne 0x41cf80
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.00407f40
push 0x107
lea ecx, [esp + 0x28]
call fcn.00407c70
lea ecx, [esp + 0x78]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], edi
call fcn.0040f3b0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x78]
push eax
mov byte [esp + 0x660], 9
call fcn.0040f980
mov ecx, dword [ebp + 4]
push ebx
push ecx
lea ecx, [esp + 0x80]
call fcn.00421700
cmp eax, edi
jne 0x41d008
mov dword [ebp + 0xa44], ebx
jmp 0x41d00e
mov dword [ebp + 0xa44], edi
lea ecx, [esp + 0x78]
mov byte [esp + 0x65c], 8
call fcn.0041bdb0
jmp 0x41d027
mov dword [ebp + 0xa44], edi
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x64]
push 0xa
push edx
push eax
call fcn.004560cb
add esp, 8
lea edx, [ebp + 0xa70]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
call fcn.00407110
push ecx
lea eax, [esp + 0x6c]
mov ecx, esp
mov dword [esp + 0x5c], esp
push eax
mov byte [esp + 0x668], 0xa
call fcn.00407200
push ecx
lea eax, [ebp + 0x144c]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
mov byte [esp + 0x66c], 0xb
call fcn.00407110
push ecx
lea edx, [ebp + 0xa74]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
mov byte [esp + 0x670], 0xc
call fcn.00407110
mov ecx, 0x47b738
mov byte [esp + 0x66c], 8
call fcn.00447360
mov eax, dword [esp + 0x650]
mov dword [ebp + 0x145c], eax
mov dword [ebp + 0x1454], edi
lea ecx, [esp + 0x478]
mov byte [esp + 0x65c], 7
call fcn.0041bdb0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x65c], 3
call fcn.00408010
lea ecx, [esp + 0x44]
mov byte [esp + 0x65c], 2
call fcn.00408010
mov byte [esp + 0x65c], 1
lea ecx, [esp + 0x48]
jmp 0x41d351
cmp eax, 5
jne 0x41d358
mov ecx, dword [0x46f42c]
mov dword [esp + 0x40], ecx
push esi
lea edx, [esp + 0x44]
push 0x473734
push edx
mov byte [esp + 0x668], 0xd
call fcn.004076f0
add esp, 0xc
mov edi, 1
cmp esi, 0xffffffa5
mov dword [ebp + 0x1464], edi
mov dword [ebp + 0x1460], edi
mov dword [esp + 0x30], 2
je 0x41d177
push 0x109
lea ecx, [esp + 0x18]
call fcn.00407c70
push 0x47a15c
lea ecx, [esp + 0x1c]
call fcn.00407430
push 0x10b
jmp 0x41d1ad
push 0x10a
lea ecx, [esp + 0x18]
call fcn.00407c70
mov eax, 0x47a15c
test eax, eax
je 0x41d199
push 0x47a15c
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x47a15c
push eax
lea ecx, [esp + 0x20]
call fcn.004080a0
push 0x10c
lea ecx, [esp + 0x20]
call fcn.00407c70
push 0xfa
lea ecx, [esp + 0x24]
call fcn.00407c70
push 0xfb
lea ecx, [esp + 0x28]
call fcn.00407c70
push 0x108
lea ecx, [esp + 0x2c]
call fcn.00407c70
lea ecx, [esp + 0x78]
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
call fcn.0040f3b0
lea ecx, [esp + 0x10]
mov bl, 0xe
push ecx
lea ecx, [esp + 0x7c]
mov byte [esp + 0x660], bl
call fcn.0040f980
mov edx, dword [ebp + 4]
xor edi, edi
push edi
push edx
lea ecx, [esp + 0x80]
mov dword [esp + 0x258], edi
call fcn.00421700
cmp eax, 1
jne 0x41d22f
mov dword [ebp + 0xa44], edi
jmp 0x41d239
mov dword [ebp + 0xa44], 1
cmp dword [esp + 0x250], edi
je 0x41d2b0
lea eax, [esp + 0x64]
push 0xa
push eax
push esi
call fcn.004560cb
add esp, 8
lea edx, [ebp + 0xa70]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
call fcn.00407110
push ecx
lea eax, [esp + 0x6c]
mov ecx, esp
mov dword [esp + 0x5c], esp
push eax
mov byte [esp + 0x668], 0xf
call fcn.00407200
push ecx
lea eax, [ebp + 0x144c]
mov ecx, esp
mov dword [esp + 0x58], esp
push eax
mov byte [esp + 0x66c], 0x10
call fcn.00407110
push ecx
lea edx, [ebp + 0xa74]
mov ecx, esp
mov dword [esp + 0x4c], esp
mov byte [esp + 0x66c], 0x11
push edx
jmp 0x41d30d
push ecx
lea eax, [ebp + 0xa70]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
call fcn.00407110
push ecx
mov byte [esp + 0x664], 0x12
mov ecx, esp
mov dword [esp + 0x5c], esp
push 0x47a15c
call fcn.00407200
push ecx
lea edx, [ebp + 0x1450]
mov ecx, esp
mov dword [esp + 0x58], esp
push edx
mov byte [esp + 0x66c], 0x13
call fcn.00407110
push ecx
lea eax, [ebp + 0xa74]
mov ecx, esp
mov dword [esp + 0x4c], esp
mov byte [esp + 0x66c], 0x14
push eax
call fcn.00407110
mov ecx, 0x47b738
mov byte [esp + 0x66c], bl
call fcn.00447360
mov dword [esp + 0x250], edi
mov dword [ebp + 0x1454], 1
lea ecx, [esp + 0x78]
mov byte [esp + 0x65c], 0xd
call fcn.0041bdb0
mov byte [esp + 0x65c], 1
lea ecx, [esp + 0x40]
call fcn.00408010
xor ebx, ebx
lea ecx, [esp + 0x10]
call fcn.0040f850
lea ecx, [esp + 0x58]
call fcn.0041bd50
jmp 0x41d3f3
push ecx
lea edx, [ebp + 0xa70]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
call fcn.00407110
push ecx
mov dword [esp + 0x664], 0x15
mov ecx, esp
mov dword [esp + 0x5c], esp
push 0x47a15c
call fcn.00407200
push ecx
lea eax, [ebp + 0x1450]
mov ecx, esp
mov dword [esp + 0x58], esp
push eax
mov byte [esp + 0x66c], 0x16
call fcn.00407110
push ecx
lea edx, [ebp + 0xa74]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
mov byte [esp + 0x670], 0x17
call fcn.00407110
mov ecx, 0x47b738
mov dword [esp + 0x66c], 0xffffffff
call fcn.00447360
mov dword [ebp + 0x1454], 1
mov eax, dword [ebp + 4]
push ebx
push 0x64
push 3
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [ebp + 0x1460]
mov ecx, dword [esp + 0x654]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x650
ret