Function at 0x475bc0
Capabilities:
Delete file
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c8
mov eax, dword [0x4bc1f0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
call dword [sym.imp.winmm.dll_timeGetTime]
push eax
call fcn.00484392
add esp, 4
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, 0x4c5778
call fcn.004017d0
mov ecx, 0x4c5778
call fcn.004010b0
push eax
mov ecx, 0x4c5778
call fcn.004010b0
push eax
call dword [sym.imp.user32.dll_FindWindowA]
test eax, eax
je 0x475c24
xor eax, eax
jmp 0x4766ee
call fcn.00422f10
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.00484763
add esp, 4
mov dword [ebp - 0x474], eax
push 0x7d0
mov ecx, 0x4c5ff8
call fcn.00480090
mov ecx, 0x17f1470
call fcn.0042bfb0
xor edx, edx
mov dword [ebp - 0x334], edx
mov dword [ebp - 0x330], edx
mov dword [ebp - 0x32c], edx
mov dword [ebp - 0x328], edx
mov dword [ebp - 0x324], edx
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x31c], edx
cmp dword [ebp + 0xc], 0
jne 0x475d23
mov dword [ebp - 0x364], 0x1020
mov dword [ebp - 0x360], 0x476800
mov dword [ebp - 0x35c], 0
mov dword [ebp - 0x358], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x354], eax
push 0x68
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.user32.dll_LoadIconA]
mov dword [ebp - 0x350], eax
push 0x7f00
push 0
call dword [sym.imp.user32.dll_LoadCursorA]
mov dword [ebp - 0x34c], eax
push 5
call dword [sym.imp.gdi32.dll_GetStockObject]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], 0
mov ecx, 0x4c5778
call fcn.004010b0
mov dword [ebp - 0x340], eax
lea edx, [ebp - 0x364]
push edx
call dword [sym.imp.user32.dll_RegisterClassA]
movzx eax, ax
test eax, eax
jne 0x475d23
xor eax, eax
jmp 0x4766ee
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0
push 0
push 0x80000000
push 0x80000000
push 0x80000000
push 0x80000000
push 0x82ca0000
mov ecx, 0x4c5778
call fcn.004010b0
push eax
mov ecx, 0x4c5778
call fcn.004010b0
push eax
push 0
call dword [sym.imp.user32.dll_CreateWindowExA]
mov dword [ebp - 0x318], eax
cmp dword [ebp - 0x318], 0
jne 0x475d7a
xor eax, eax
jmp 0x4766ee
push 0
mov edx, dword [ebp - 0x318]
push edx
call sub.imm32.dll_ImmAssociateContext
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [sym.imp.user32.dll_ShowWindow]
mov edx, dword [ebp - 0x318]
push edx
call dword [sym.imp.user32.dll_UpdateWindow]
mov eax, dword [ebp - 0x318]
push eax
call dword [sym.imp.user32.dll_SetFocus]
mov ecx, dword [ebp - 0x318]
push ecx
mov ecx, 0x4c5778
call fcn.00475b00
mov ecx, 0x4c5778
call fcn.00404450
mov ecx, 0x4c5778
call fcn.00408130
mov ecx, 0x4c5778
call fcn.00401130
push eax
mov ecx, 0x4c5778
call fcn.00401110
push eax
push 0
mov edx, dword [ebp - 0x318]
push edx
mov ecx, 0x1ce8830
call fcn.00409790
mov eax, dword [ebp - 0x318]
push eax
mov ecx, 0x4c5778
call fcn.00475b00
push 0
mov ecx, 0x4c5778
call fcn.00402400
mov ecx, 0x27d8468
call fcn.0042b110
mov ecx, 0x4c6018
call fcn.00429230
mov ecx, 0x4c6018
call fcn.00429610
mov ecx, 0x4c6018
call fcn.004012a0
mov dword [ebp - 0x33c], eax
mov ecx, dword [ebp - 0x33c]
mov dl, byte [ecx]
mov byte [ebp - 0x335], dl
mov eax, dword [ebp - 0x33c]
mov byte [eax], 0
mov cl, byte [ebp - 0x335]
mov byte [ebp - 0x6c8], cl
cmp byte [ebp - 0x6c8], 0
je 0x475e8c
cmp byte [ebp - 0x6c8], 1
je 0x475e9a
cmp byte [ebp - 0x6c8], 2
je 0x475ea8
jmp 0x475eb4
push 0
mov ecx, 0x4c5778
call fcn.00402fe0
jmp 0x475eb4
push 0
mov ecx, 0x4c5778
call fcn.00402f30
jmp 0x475eb4
push 0
mov ecx, 0x4c5778
call fcn.00479ac0
mov edx, dword [ebp - 0x474]
push edx
push 0x4b0bb4
mov ecx, 0x5600e8
call fcn.00441c00
movzx eax, al
cmp eax, 1
je 0x475ee6
mov ecx, dword [ebp - 0x318]
push ecx
call dword [sym.imp.user32.dll_DestroyWindow]
xor eax, eax
jmp 0x4766ee
mov edx, dword [ebp - 0x474]
push edx
push 0x4b0bc4
mov ecx, 0x17f1470
call fcn.0042c310
movzx eax, al
cmp eax, 1
je 0x475f18
mov ecx, dword [ebp - 0x318]
push ecx
call dword [sym.imp.user32.dll_DestroyWindow]
xor eax, eax
jmp 0x4766ee
mov dword [ebp - 0x314], 0
mov dword [ebp - 0x47c], 0
mov dword [ebp - 0x478], 0
cmp dword [ebp - 0x474], 1
je 0x475f51
cmp dword [ebp - 0x474], 6
je 0x475f51
cmp dword [ebp - 0x474], 8
jne 0x475f93
push 0
push 0x44c130
mov edx, dword [ebp - 0x318]
push edx
push 0x65
mov ecx, 0x4c5778
call fcn.00429040
push eax
call dword [sym.imp.user32.dll_CreateDialogParamA]
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x314]
push eax
mov ecx, 0x55fb70
call fcn.0044d410
mov ecx, 0x55fb70
call fcn.0044e480
cmp dword [ebp - 0x474], 5
je 0x475fae
cmp dword [ebp - 0x474], 6
je 0x475fae
cmp dword [ebp - 0x474], 8
jne 0x475fe6
push 0
push 0x44baa0
mov ecx, dword [ebp - 0x318]
push ecx
push 0x6a
mov ecx, 0x4c5778
call fcn.00429040
push eax
call dword [sym.imp.user32.dll_CreateDialogParamA]
mov dword [ebp - 0x47c], eax
mov edx, dword [ebp - 0x47c]
push edx
mov ecx, 0x17f1470
call fcn.00475b80
mov ecx, 0x6888a08
call fcn.00446e30
mov ecx, 0x4c5e7c
call fcn.0041c370
mov ecx, 0x55f4d8
call fcn.0041a800
mov ecx, 0x1bdcda0
call fcn.0041fd40
mov ecx, 0x2071bd8
call fcn.0041a800
mov ecx, 0x4c6018
call fcn.00429450
mov ecx, 0x4c5778
call fcn.00408560
cmp dword [ebp - 0x474], 7
je 0x47603e
cmp dword [ebp - 0x474], 8
jne 0x476076
push 0
push 0x44cd00
mov eax, dword [ebp - 0x318]
push eax
push 0x6c
mov ecx, 0x4c5778
call fcn.00429040
push eax
call dword [sym.imp.user32.dll_CreateDialogParamA]
mov dword [ebp - 0x478], eax
mov ecx, dword [ebp - 0x478]
push ecx
mov ecx, 0x55f4d8
call fcn.00475b20
push 0x4b0bd0
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.kernel32.dll_lstrcmpiA]
test eax, eax
jne 0x476191
mov ecx, 0x5600e8
call fcn.00439550
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x480], 0
mov eax, dword [ebp - 0x480]
cmp eax, dword [ebp - 0x488]
jge 0x4760dd
mov ecx, dword [ebp - 0x480]
mov edx, dword [ebp - 0x33c]
mov dword [edx + ecx*4 + 0x25c8], 1
mov eax, dword [ebp - 0x480]
add eax, 1
mov dword [ebp - 0x480], eax
jmp 0x4760a7
mov ecx, 0x5600e8
call fcn.00439630
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x484], 0
mov ecx, dword [ebp - 0x484]
cmp ecx, dword [ebp - 0x48c]
jge 0x47612d
mov edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x33c]
mov dword [eax + edx*4 + 0x3ba8], 1
mov ecx, dword [ebp - 0x484]
add ecx, 1
mov dword [ebp - 0x484], ecx
jmp 0x4760f7
mov ecx, 0x5600e8
call fcn.00439650
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x494], 0
mov edx, dword [ebp - 0x490]
add edx, 1
cmp dword [ebp - 0x494], edx
jge 0x476180
mov eax, dword [ebp - 0x494]
mov ecx, dword [ebp - 0x33c]
mov dword [ecx + eax*4 + 0x3888], 1
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
jmp 0x476147
mov ecx, 0x4c6018
call fcn.004294e0
push 0
call fcn.0048427a
mov ecx, 0x4c5e90
call fcn.00418380
mov ecx, 0x17f1470
call fcn.00475ba0
movzx eax, al
test eax, eax
je 0x4763ad
lea ecx, [ebp - 0x4b8]
call fcn.004811d0
mov ecx, 0x4c5778
call fcn.00409580
push eax
lea ecx, [ebp - 0x5e8]
push ecx
call dword [sym.imp.kernel32.dll_lstrcpyA]
push 0x4b0bd8
lea edx, [ebp - 0x5e8]
push edx
call dword [sym.imp.kernel32.dll_lstrcatA]
lea eax, [ebp - 0x4a4]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [sym.imp.user32.dll_GetWindowRect]
lea ecx, [ebp - 0x4d8]
call fcn.00483330
mov dword [ebp - 0x4dc], 0
mov dword [ebp - 0x4a8], 0
lea edx, [ebp - 0x5e8]
push edx
lea ecx, [ebp - 0x4d8]
call fcn.004833a0
test eax, eax
jne 0x476397
push 0xc8
lea eax, [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x4d8]
call fcn.00483570
lea ecx, [ebp - 0x6b0]
push ecx
lea ecx, [ebp - 0x4b8]
call fcn.00481590
push 0
push 0x4b0bf0
lea ecx, [ebp - 0x4b8]
call fcn.00481280
test eax, eax
jge 0x4762b8
lea ecx, [ebp - 0x4d8]
call fcn.00424e70
mov esi, eax
lea ecx, [ebp - 0x4d8]
call fcn.00451630
cmp esi, eax
jae 0x4762b8
push 0xc8
lea edx, [ebp - 0x6b0]
push edx
lea ecx, [ebp - 0x4d8]
call fcn.00483570
lea eax, [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00481590
jmp 0x47625b
lea ecx, [ebp - 0x6b0]
push ecx
call dword [sym.imp.kernel32.dll_lstrlenA]
test eax, eax
jle 0x47635e
lea ecx, [ebp - 0x4b8]
call fcn.00401040
sub eax, 7
push eax
lea ecx, [ebp - 0x4b8]
call fcn.004813f0
lea ecx, [ebp - 0x4b8]
call fcn.00429040
push eax
call fcn.00484763
add esp, 4
mov dword [ebp - 0x4dc], eax
push 0xc8
lea edx, [ebp - 0x6b0]
push edx
lea ecx, [ebp - 0x4d8]
call fcn.00483570
lea eax, [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00481590
lea ecx, [ebp - 0x4b8]
call fcn.00401040
sub eax, 7
push eax
lea ecx, [ebp - 0x4b8]
call fcn.004813f0
lea ecx, [ebp - 0x4b8]
call fcn.00429040
push eax
call fcn.00484763
add esp, 4
mov dword [ebp - 0x4a8], eax
push 0x40
mov ecx, dword [ebp - 0x498]
sub ecx, dword [ebp - 0x4a0]
push ecx
mov edx, dword [ebp - 0x49c]
sub edx, dword [ebp - 0x4a4]
push edx
mov eax, dword [ebp - 0x4a8]
push eax
mov ecx, dword [ebp - 0x4dc]
push ecx
push 0
mov edx, dword [ebp - 0x318]
push edx
call dword [sym.imp.user32.dll_SetWindowPos]
lea ecx, [ebp - 0x4d8]
call fcn.00483350
lea ecx, [ebp - 0x4b8]
call fcn.00481220
lea ecx, [ebp - 0x310]
call fcn.00402cb0
push 0x304
push 0
lea eax, [ebp - 0x310]
push eax
call fcn.00484ea0
add esp, 0xc
mov dword [ebp - 0x2d4], 0x500
mov dword [ebp - 0x2d0], 0x2d0
fld1
fstp dword [ebp - 0x2ec]
mov dword [ebp - 0x30c], 0x69
mov byte [ebp - 0x300], 1
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0
mov dword [ebp - 0x2c0], 0
fldz
fstp dword [ebp - 0x2f4]
fldz
fstp dword [ebp - 0x2f0]
mov dword [ebp - 0x310], 0x1f4
push ecx
fld dword [0x4b6230]
fstp dword [esp]
push ecx
fldz
fstp dword [esp]
push ecx
fldz
fstp dword [esp]
push ecx
fldz
fstp dword [esp]
lea ecx, [ebp - 0x6c4]
call fcn.00401000
mov ecx, dword [eax]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x2e0], edx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x2dc], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x2d8], edx
lea eax, [ebp - 0x310]
push eax
mov ecx, 0x2071bd8
call fcn.0040b750
push 0x304
push 0
lea ecx, [ebp - 0x310]
push ecx
call fcn.00484ea0
add esp, 0xc
push 1
call dword [sym.imp.winmm.dll_timeBeginPeriod]
mov ecx, 0x4c5778
call fcn.004010f0
cmp eax, 0x25
je 0x47663b
mov ecx, 0x4c5778
call fcn.004010f0
push eax
mov ecx, 0x4c5778
call fcn.00401150
mov dword [ebp - 0x6b4], eax
mov edx, dword [ebp - 0x6b4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x6b4]
mov edx, dword [eax + 0x18]
call edx
cmp eax, 0xf
je 0x476519
mov ecx, 0x4c5778
call fcn.004010f0
cmp eax, 0x1d
jne 0x4765ed
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x334]
push eax
call dword [sym.imp.user32.dll_PeekMessageA]
test eax, eax
je 0x4765d7
push 1
push 0
push 0
push 0
lea ecx, [ebp - 0x334]
push ecx
call dword [sym.imp.user32.dll_PeekMessageA]
test eax, eax
je 0x4765d5
lea edx, [ebp - 0x334]
push edx
call dword [sym.imp.user32.dll_TranslateMessage]
lea eax, [ebp - 0x334]
push eax
call dword [sym.imp.user32.dll_DispatchMessageA]
mov ecx, 0x1ce8c00
call fcn.0041f890
cmp eax, 0x26
je 0x47658b
mov ecx, 0x1ce8c00
call fcn.0041f890
cmp eax, 0x28
jne 0x4765ab
mov ecx, 0x1ce8c00
call fcn.0041f900
mov ecx, 0x4c5778
call fcn.00401fd0
mov ecx, 0x55f4d8
call fcn.0041e6a0
jmp 0x4765d0
mov ecx, 0x1ce8c00
call fcn.0041f890
cmp eax, 0x115
jne 0x4765d0
mov ecx, 0x4c5778
call fcn.00401fd0
mov ecx, 0x55f4d8
call fcn.0041e6a0
jmp 0x476536
jmp 0x4765eb
mov ecx, 0x4c5778
call fcn.00401fd0
mov ecx, 0x55f4d8
call fcn.0041e6a0
jmp 0x476636
push 1
push 0
push 0
push 0
lea ecx, [ebp - 0x334]
push ecx
call dword [sym.imp.user32.dll_PeekMessageA]
test eax, eax
je 0x476622
lea edx, [ebp - 0x334]
push edx
call dword [sym.imp.user32.dll_TranslateMessage]
lea eax, [ebp - 0x334]
push eax
call dword [sym.imp.user32.dll_DispatchMessageA]
jmp 0x4765ed
mov ecx, 0x4c5778
call fcn.00401fd0
mov ecx, 0x55f4d8
call fcn.0041e6a0
jmp 0x4764c0
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, 0x4c5e08
call fcn.0044f0d0
movzx ecx, al
test ecx, ecx
je 0x476672
push 0
mov ecx, 0x4c5e08
call fcn.0044f6a0
push 0
mov ecx, 0x4c5e08
call fcn.0044f710
mov ecx, 0x4c5e08
call fcn.0044f1b0
push 1
call dword [sym.imp.winmm.dll_timeEndPeriod]
mov ecx, 0x4c6018
call fcn.004294e0
mov ecx, 0x4c5778
call fcn.00408de0
push 0x4b0bf8
lea edx, [ebp - 0x470]
push edx
call dword [sym.imp.kernel32.dll_lstrcpyA]
lea eax, [ebp - 0x470]
push eax
call dword [sym.imp.kernel32.dll_DeleteFileA]
mov ecx, 0x4c5e90
call fcn.00418dd0
mov ecx, 0x55f4d8
call fcn.0041e540
mov ecx, 0x2071bd8
call fcn.00475b40
mov ecx, 0x4c5778
call fcn.004016f0
mov ecx, 0x1ce8830
call fcn.00409730
mov ecx, dword [ebp - 0x318]
push ecx
call dword [sym.imp.user32.dll_DestroyWindow]
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00483cec
mov esp, ebp
pop ebp
ret 0x10