Function at 0x40c950
Capabilities:
Contain obfuscated stackstrings
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x5e1cb8
mov eax, dword fs:[0]
push eax
mov eax, 0x1018
call fcn.004a0d90
mov eax, dword [0x658aa8]
xor eax, esp
mov dword [esp + 0x1014], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x658aa8]
xor eax, esp
push eax
lea eax, [esp + 0x102c]
mov dword fs:[0], eax
mov esi, dword [esp + 0x1048]
mov al, 0x6d
xor ebx, ebx
mov byte [esp + 0xfde], al
mov byte [esp + 0xfdf], al
mov eax, 0x6e
mov ebp, ecx
mov cl, 0x6f
mov dword [esp + 0x24], esi
mov byte [esp + 0xfd0], 0xb9
mov byte [esp + 0xfd1], 0xd8
mov byte [esp + 0xfd2], 0xb1
mov byte [esp + 0xfd3], 0xd5
mov byte [esp + 0xfd4], 0xb5
mov byte [esp + 0xfd5], 0xc7
mov byte [esp + 0xfd6], 0xba
mov byte [esp + 0xfd7], 0xc5
mov byte [esp + 0xfd8], 0xc6
mov byte [esp + 0xfd9], 0xf7
mov byte [esp + 0xfda], bl
mov byte [esp + 0xfdc], 0x43
mov byte [esp + 0xfdd], cl
mov byte [esp + 0xfe0], cl
mov byte [esp + 0xfe1], al
mov byte [esp + 0xfe2], 0x53
mov byte [esp + 0xfe3], 0x65
mov byte [esp + 0xfe4], 0x74
mov byte [esp + 0xfe5], bl
mov byte [esp + 0xfc8], 0x69
mov byte [esp + 0xfc9], 0x73
mov byte [esp + 0xfca], 0x54
mov byte [esp + 0xfcb], 0x72
mov byte [esp + 0xfcc], 0x61
mov byte [esp + 0xfcd], 0x79
mov byte [esp + 0xfce], bl
cmp dword [esp + 0x1040], eax
jne 0x40cf69
push 3
mov edi, 0xf
push 0x63523c
lea ecx, [esp + 0x38]
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
call fcn.00414400
mov dword [esp + 0x1034], ebx
lea eax, [esp + 0xfd0]
mov dword [esp + 0xf0], edi
mov dword [esp + 0xec], ebx
mov byte [esp + 0xdc], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40cad3
sub eax, edx
push eax
lea eax, [esp + 0xfd4]
push eax
lea ecx, [esp + 0xe0]
call fcn.00414400
push 0xffffffffffffffff
mov byte [esp + 0x1038], 1
push ebx
push 0x664a64
lea ecx, [esp + 0x138]
mov dword [esp + 0x150], edi
mov dword [esp + 0x14c], ebx
mov byte [esp + 0x13c], bl
call fcn.00414010
mov byte [esp + 0x1034], 2
push 1
push 0x635104
lea ecx, [esp + 0xfc]
mov dword [esp + 0x114], edi
mov dword [esp + 0x110], ebx
mov byte [esp + 0x100], bl
call fcn.00414400
push 0xffffffffffffffff
mov byte [esp + 0x1038], 3
push ebx
push 0x664a10
lea ecx, [esp + 0x58]
mov dword [esp + 0x70], edi
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
call fcn.00414010
mov byte [esp + 0x1034], 4
push 1
push 0x635104
lea ecx, [esp + 0xc4]
mov dword [esp + 0xdc], edi
mov dword [esp + 0xd8], ebx
mov byte [esp + 0xc8], bl
call fcn.00414400
mov byte [esp + 0x1034], 5
push ebx
push 0x637908
lea ecx, [esp + 0x8c]
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa0], ebx
mov byte [esp + 0x90], bl
call fcn.00414400
push 0xffffffffffffffff
mov byte [esp + 0x1038], 6
push ebx
push 0x664a48
lea ecx, [esp + 0x74]
mov dword [esp + 0x8c], edi
mov dword [esp + 0x88], ebx
mov byte [esp + 0x78], bl
call fcn.00414010
push 0xffffffffffffffff
mov byte [esp + 0x1038], 7
push ebx
push 0x664a2c
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.00414010
push 0xffffffffffffffff
mov byte [esp + 0x1038], 8
push ebx
mov dword [esp + 0xc0], edi
mov dword [esp + 0xbc], ebx
mov byte [esp + 0xac], bl
push 0x6649a0
lea ecx, [esp + 0xac]
call fcn.00414010
mov byte [esp + 0x1034], 9
mov edx, dword [esp + 0xa4]
mov esi, 0x10
cmp dword [esp + 0xb8], esi
jae 0x40cc87
lea edx, [esp + 0xa4]
cmp dword [esp + 0x9c], esi
jb 0x40cc9d
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x2c], ecx
jmp 0x40cca8
lea eax, [esp + 0x88]
mov dword [esp + 0x2c], eax
cmp dword [esp + 0xd4], esi
jb 0x40ccbe
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x28], ecx
jmp 0x40ccc9
lea eax, [esp + 0xc0]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x64], esi
jb 0x40ccd9
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x1c], ecx
jmp 0x40cce1
lea eax, [esp + 0x50]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x128], esi
jb 0x40ccf7
mov ecx, dword [esp + 0x114]
mov dword [esp + 0x20], ecx
jmp 0x40cd02
lea eax, [esp + 0x114]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x80], esi
jb 0x40cd15
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x18], ecx
jmp 0x40cd1d
lea eax, [esp + 0x6c]
mov dword [esp + 0x18], eax
cmp dword [esp + 0x10c], esi
jb 0x40cd33
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x14], ecx
jmp 0x40cd3e
lea eax, [esp + 0xf8]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x130]
cmp dword [esp + 0x144], esi
jae 0x40cd55
lea ecx, [esp + 0x130]
mov eax, dword [esp + 0xdc]
cmp dword [esp + 0xf0], esi
jae 0x40cd6c
lea eax, [esp + 0xdc]
cmp dword [esp + 0x48], esi
mov esi, dword [esp + 0x34]
jae 0x40cd7a
lea esi, [esp + 0x34]
push edx
mov edx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x28]
push edx
mov edx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0x2c]
push edx
push ecx
push eax
mov ecx, 0x66be38
call fcn.00428580
mov eax, dword [esp + 0x24]
mov dword [eax], ebx
mov edx, dword [ebp]
mov eax, dword [edx + 0xb4]
mov ecx, ebp
call eax
push ebx
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
cmp dword [esp + 0xb8], 0x10
jb 0x40cddb
mov ecx, dword [esp + 0xa4]
push ecx
call fcn.0048fcfa
add esp, 4
mov esi, 0x10
mov dword [esp + 0xb8], edi
mov dword [esp + 0xb4], ebx
mov byte [esp + 0xa4], bl
cmp dword [esp + 0x128], esi
jb 0x40ce0e
mov edx, dword [esp + 0x114]
push edx
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x128], edi
mov dword [esp + 0x124], ebx
mov byte [esp + 0x114], bl
cmp dword [esp + 0x80], esi
jb 0x40ce39
mov eax, dword [esp + 0x6c]
push eax
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], ebx
mov byte [esp + 0x6c], bl
cmp dword [esp + 0x9c], esi
jb 0x40ce61
mov ecx, dword [esp + 0x88]
push ecx
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x9c], edi
mov dword [esp + 0x98], ebx
mov byte [esp + 0x88], bl
cmp dword [esp + 0xd4], esi
jb 0x40ce8f
mov edx, dword [esp + 0xc0]
push edx
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0xd4], edi
mov dword [esp + 0xd0], ebx
mov byte [esp + 0xc0], bl
cmp dword [esp + 0x64], esi
jb 0x40ceb7
mov eax, dword [esp + 0x50]
push eax
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x64], edi
mov dword [esp + 0x60], ebx
mov byte [esp + 0x50], bl
cmp dword [esp + 0x10c], esi
jb 0x40cedc
mov ecx, dword [esp + 0xf8]
push ecx
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x10c], edi
mov dword [esp + 0x108], ebx
mov byte [esp + 0xf8], bl
cmp dword [esp + 0x144], esi
jb 0x40cf0a
mov edx, dword [esp + 0x130]
push edx
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0x144], edi
mov dword [esp + 0x140], ebx
mov byte [esp + 0x130], bl
cmp dword [esp + 0xf0], esi
jb 0x40cf38
mov eax, dword [esp + 0xdc]
push eax
call fcn.0048fcfa
add esp, 4
mov dword [esp + 0xf0], edi
mov dword [esp + 0xec], ebx
mov byte [esp + 0xdc], bl
cmp dword [esp + 0x48], esi
jb 0x40d75a
mov ecx, dword [esp + 0x34]
push ecx
call fcn.0048fcfa
add esp, 4
jmp 0x40d75a
push ebx
call fcn.0041fd60
add esp, 4
test al, al
je 0x40d0d8
mov edx, dword [ebp + 4]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x40cf94
mov eax, dword [ebp + 4]
push 1
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp byte [0x66bf7c], bl
je 0x40cfa7
mov dword [esi], 1
jmp 0x40d75a
lea edi, [esp + 0x914]
mov byte [0x66bf7c], 1
call fcn.00401c30
sub esp, 0x44
mov dword [esp + 0x1078], 0xa
mov esi, esp
mov dword [esp + 0x58], esp
lea eax, [esi + 4]
push 0xffffffffffffffff
push 0x637908
mov dword [esi], eax
mov byte [eax], bl
call fcn.00428e20
mov ecx, dword [ebp + 4]
push ecx
mov ecx, edi
call fcn.00401ec0
mov byte [0x66bf7c], bl
cmp eax, 1
jne 0x40d53e
push eax
call fcn.0041fd60
lea edi, [esp + 0x1c]
call fcn.00424630
push str.config.ini
push eax
lea edx, [esp + 0x20]
push edx
mov byte [esp + 0x1044], 0xb
call fcn.00403c80
add esp, 0x10
push ebx
mov ecx, eax
mov byte [esp + 0x1038], 0xc
call fcn.00404030
push eax
lea ecx, [esp + 0x34]
call fcn.00414510
lea ecx, [esp + 0x14]
call fcn.00404080
mov ecx, edi
call fcn.00404080
mov eax, dword [esp + 0xfc4]
cmp eax, ebx
je 0x40d062
cmp byte [eax + 0x628], bl
jne 0x40d089
cmp dword [esp + 0x48], 0x10
mov eax, dword [esp + 0x34]
jae 0x40d071
lea eax, [esp + 0x34]
push eax
push 0x635104
lea eax, [esp + 0xfd0]
push eax
lea ecx, [esp + 0xfe8]
push ecx
jmp 0x40d0ae
cmp dword [esp + 0x48], 0x10
mov eax, dword [esp + 0x34]
jae 0x40d098
lea eax, [esp + 0x34]
push eax
push 0x63510c
lea edx, [esp + 0xfd0]
push edx
lea eax, [esp + 0xfe8]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [esp + 0x30]
call fcn.00413f50
lea ecx, [esp + 0x914]
mov dword [esp + 0x1034], 0xffffffff
call fcn.00401d40
mov esi, dword [esp + 0x24]
cmp byte [0x66bd8a], bl
je 0x40d742
mov al, 0xd4
mov cl, 0xcb
mov byte [esp + 0x100c], al
mov byte [esp + 0x100e], al
mov al, 0xd0
mov byte [esp + 0x1003], cl
mov byte [esp + 0x100f], cl
mov byte [esp + 0x1010], al
mov byte [esp + 0x1011], al
mov dl, 0xb7
mov cl, 0xa3
mov al, 0xc8
lea edi, [esp + 0x260]
mov byte [esp + 0xff4], 0xb9
mov byte [esp + 0xff5], 0xd8
mov byte [esp + 0xff6], 0xb1
mov byte [esp + 0xff7], 0xd5
mov byte [esp + 0xff8], 0xb5
mov byte [esp + 0xff9], 0xc7
mov byte [esp + 0xffa], 0xba
mov byte [esp + 0xffb], 0xc5
mov byte [esp + 0xffc], 0xc6
mov byte [esp + 0xffd], 0xf7
mov byte [esp + 0xffe], 0xbf
mov byte [esp + 0xfff], 0xcd
mov byte [esp + 0x1000], 0xbb
mov byte [esp + 0x1001], 0xa7
mov byte [esp + 0x1002], 0xb6
mov byte [esp + 0x1004], 0xbd
mov byte [esp + 0x1005], 0xab
mov byte [esp + 0x1006], 0xb9
mov byte [esp + 0x1007], 0xd8
mov byte [esp + 0x1008], 0xb1
mov byte [esp + 0x1009], 0xd5
mov byte [esp + 0x100a], 0xd5
mov byte [esp + 0x100b], 0xfd
mov byte [esp + 0x100d], 0xda
mov byte [esp + 0x1012], 0xb5
mov byte [esp + 0x1013], 0xc4
mov byte [esp + 0x1014], 0xd3
mov byte [esp + 0x1015], 0xce
mov byte [esp + 0x1016], 0xcf
mov byte [esp + 0x1017], dl
mov byte [esp + 0x1018], cl
mov byte [esp + 0x1019], 0xac
mov byte [esp + 0x101a], al
mov byte [esp + 0x101b], dl
mov byte [esp + 0x101c], al
mov byte [esp + 0x101d], 0xcf
mov byte [esp + 0x101e], 0xb2
mov byte [esp + 0x101f], 0xd9
mov byte [esp + 0x1020], 0xd7
mov byte [esp + 0x1021], 0xf7
mov byte [esp + 0x1022], 0xc2
mov byte [esp + 0x1023], 0xf0
mov byte [esp + 0x1024], cl
mov byte [esp + 0x1025], 0xbf
mov byte [esp + 0x1026], bl
mov byte [esp + 0xfe8], 0xb9
mov byte [esp + 0xfe9], 0xd8
mov byte [esp + 0xfea], 0xb1
mov byte [esp + 0xfeb], 0xd5
mov byte [esp + 0xfec], 0xcc
mov byte [esp + 0xfed], 0xe1
mov byte [esp + 0xfee], 0xca
mov byte [esp + 0xfef], 0xbe
mov byte [esp + 0xff0], bl
call fcn.004040a0
sub esp, 0x44
mov dword [esp + 0x1078], 0xd
mov esi, esp
mov dword [esp + 0x58], esp
lea eax, [esi + 4]
push 0xffffffffffffffff
push 0x634908
mov dword [esi], eax
mov byte [eax], bl
call fcn.00428e20
sub esp, 0x44
mov dword [esp + 0x9c], esp
mov esi, esp
lea eax, [esi + 4]
push 0xffffffffffffffff
push 0x634900
mov dword [esi], eax
mov byte [eax], bl
call fcn.00428e20
push 1
mov cl, 1
call fcn.00404260
push ebx
sub esp, 0x44
mov esi, esp
mov dword [esp + 0x5c], esp
lea eax, [esi + 4]
push 0xffffffffffffffff
push 0x634b08
mov dword [esi], eax
mov byte [eax], bl
call fcn.00428e20
sub esp, 0x44
mov esi, esp
mov dword [esp + 0xa0], esp
lea eax, [esi + 4]
push 0xffffffffffffffff
lea edx, [esp + 0x1084]
push edx
mov dword [esi], eax
mov byte [eax], bl
call fcn.00428e20
sub esp, 0x44
mov esi, esp
lea eax, [esi + 4]
mov dword [esp + 0xe4], esp
mov dword [esi], eax
mov byte [eax], bl
push 0xffffffffffffffff
lea eax, [esp + 0x10bc]
push eax
call fcn.00428e20
mov ecx, dword [ebp + 4]
push ecx
mov ecx, edi
call fcn.004046f0
cmp eax, 1
jne 0x40d71f
push 0x63523c
lea ecx, [esp + 0x22c]
call fcn.00414510
lea edx, [esp + 0xfd0]
push edx
lea ecx, [esp + 0x248]
mov byte [esp + 0x1038], 0xe
call fcn.00414510
push 0xffffffffffffffff
mov byte [esp + 0x1038], 0xf
push ebx
mov esi, 0xf
push 0x664a64
lea ecx, [esp + 0x170]
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], ebx
mov byte [esp + 0x174], bl
call fcn.00414010
push 0x635104
lea ecx, [esp + 0x1f4]
mov byte [esp + 0x1038], 0x10
call fcn.00414510
push 0xffffffffffffffff
mov byte [esp + 0x1038], 0x11
push ebx
push 0x664a10
lea ecx, [esp + 0x1a8]
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], ebx
mov byte [esp + 0x1ac], bl
call fcn.00414010
push 0x635104
lea ecx, [esp + 0x210]
mov byte [esp + 0x1038], 0x12
call fcn.00414510
push 0x637908
lea ecx, [esp + 0x1d8]
mov byte [esp + 0x1038], 0x13
call fcn.00414510
push 0xffffffffffffffff
mov byte [esp + 0x1038], 0x14
push ebx
push 0x664a48
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], ebx
mov byte [esp + 0x1c8], bl
call fcn.00414010
push 0xffffffffffffffff
mov byte [esp + 0x1038], 0x15
push ebx
push 0x664a2c
lea ecx, [esp + 0x18c]
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a0], ebx
mov byte [esp + 0x190], bl
call fcn.00414010
push 0xffffffffffffffff
mov byte [esp + 0x1038], 0x16
push ebx
push 0x6649a0
lea ecx, [esp + 0x154]
mov dword [esp + 0x16c], esi
mov dword [esp + 0x168], ebx
mov byte [esp + 0x158], bl
call fcn.00414010
mov byte [esp + 0x1034], 0x17
mov edi, dword [esp + 0x14c]
mov esi, 0x10
cmp dword [esp + 0x160], esi
jae 0x40d528
lea edi, [esp + 0x14c]
cmp dword [esp + 0x1ec], esi
jb 0x40d564
mov eax, dword [esp + 0x1d8]
mov dword [esp + 0x14], eax
jmp 0x40d56f
mov ecx, dword [esp + 0x24]
mov dword [ecx], 1
lea ecx, [esp + 0x914]
mov dword [esp + 0x1034], 0xffffffff
call fcn.00401d40
jmp 0x40d75a
lea ecx, [esp + 0x1d8]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x224], esi
jb 0x40d585
mov edx, dword [esp + 0x210]
mov dword [esp + 0x18], edx
jmp 0x40d590
lea eax, [esp + 0x210]
mov dword [esp + 0x18], eax
cmp dword [esp + 0x1b4], esi
jb 0x40d5a6
mov ecx, dword [esp + 0x1a0]
mov dword [esp + 0x20], ecx
jmp 0x40d5b1
lea edx, [esp + 0x1a0]
mov dword [esp + 0x20], edx
cmp dword [esp + 0x198], esi
jb 0x40d5c7
mov eax, dword [esp + 0x184]
mov dword [esp + 0x1c], eax
jmp 0x40d5d2
lea ecx, [esp + 0x184]
mov dword [esp + 0x1c], ecx
cmp dword [esp + 0x1d0], esi
jb 0x40d5e8
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x28], edx
jmp 0x40d5f3
lea eax, [esp + 0x1bc]
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x1f4]
cmp dword [esp + 0x208], esi
jae 0x40d60a
lea edx, [esp + 0x1f4]
mov ecx, dword [esp + 0x168]
cmp dword [esp + 0x17c], esi
jae 0x40d621
lea ecx, [esp + 0x168]
mov eax, dword [esp + 0x248]
cmp dword [esp + 0x25c], esi
jae 0x40d638
lea eax, [esp + 0x248]
cmp dword [esp + 0x240], esi
mov esi, dword [esp + 0x22c]
jae 0x40d64f
lea esi, [esp + 0x22c]
push edi
mov edi, dword [esp + 0x18]
push edi
mov edi, dword [esp + 0x20]
push edi
mov edi, dword [esp + 0x2c]
push edi
mov edi, dword [esp + 0x2c]
push edi
mov edi, dword [esp + 0x3c]
push edi
push edx
push ecx
push eax
mov ecx, 0x66be38
call fcn.00428580
mov eax, dword [0x66bf40]
cmp eax, ebx
je 0x40d689
push 0x637908
call eax
add esp, 4
mov ecx, dword [esp + 0x24]
mov dword [ecx], ebx
mov edx, dword [ebp]
mov eax, dword [edx + 0xb4]
mov ecx, ebp
call eax
push ebx
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
lea ecx, [esp + 0x148]
call fcn.00413f50
lea ecx, [esp + 0x180]
call fcn.00413f50
lea ecx, [esp + 0x1b8]
call fcn.00413f50
lea ecx, [esp + 0x1d4]
call fcn.00413f50
lea ecx, [esp + 0x20c]
call fcn.00413f50
lea ecx, [esp + 0x19c]
call fcn.00413f50
lea ecx, [esp + 0x1f0]
call fcn.00413f50
lea ecx, [esp + 0x164]
call fcn.00413f50
lea ecx, [esp + 0x244]
call fcn.00413f50
lea ecx, [esp + 0x228]
call fcn.00413f50
jmp 0x40d729
mov ecx, dword [esp + 0x24]
mov dword [ecx], 1
lea esi, [esp + 0x260]
mov dword [esp + 0x1034], 0xffffffff
call fcn.004041b0
jmp 0x40d75a
mov dword [esi], ebx
mov edx, dword [ebp]
mov eax, dword [edx + 0xb4]
mov ecx, ebp
call eax
push ebx
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
xor eax, eax
mov ecx, dword [esp + 0x102c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1014]
xor ecx, esp
call fcn.00499a1c
add esp, 0x1024
ret 0x10