Function at 0x401ba0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get process heap flags
Get process heap force flags

Disassembly:
push 0xffffffffffffffff
push 0x40de30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x38
mov ecx, dword [0x423874]
mov eax, dword [0x423870]
mov edx, dword [0x423878]
mov dword [esp + 0x1c], ecx
mov cl, byte [esp + 3]
push ebx
mov dword [esp + 0x1c], eax
mov eax, dword [0x42387c]
xor ebx, ebx
push edi
mov byte [esp + 0x10], cl
push ebx
lea ecx, [esp + 0x14]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
call fcn.00404d70
mov edi, 0x42309c
or ecx, 0xffffffff
xor eax, eax
mov dword [esp + 0x48], ebx
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x42309c
lea ecx, [esp + 0x18]
call fcn.00405350
lea edx, [esp + 0x10]
push 0x4228c8
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 1
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4220f4
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 2
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x421920
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 3
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x42114c
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 4
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x420978
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 5
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4201a4
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 6
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41f9d0
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 7
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
push 0x41f1fc
lea edx, [esp + 0x14]
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 8
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41ea28
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 9
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41e254
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xa
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41da80
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xb
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41d2ac
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xc
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41cad8
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xd
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41c304
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xe
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41bb30
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0xf
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41b35c
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x10
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41ab88
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x11
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41a3b4
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x12
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x419be0
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x13
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41940c
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x14
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
mov byte [esp + 0x48], bl
push 1
lea ecx, [esp + 0x34]
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x418c38
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x15
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x418464
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x16
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x417c90
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x17
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4174bc
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x18
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
push 0x416ce8
lea edx, [esp + 0x14]
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x19
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x416514
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1a
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x415d40
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1b
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41556c
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1c
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x414d98
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1d
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4145c4
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1e
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x413df0
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x1f
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x41361c
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x20
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x412e48
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x21
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x412674
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x22
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x411ea0
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x23
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4116cc
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x24
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x410ef8
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x25
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
mov byte [esp + 0x48], bl
push 1
lea ecx, [esp + 0x34]
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x410724
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x26
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
lea edx, [esp + 0x10]
push 0x4100c8
lea eax, [esp + 0x34]
push edx
push eax
call fcn.00405720
add esp, 0xc
mov ecx, dword [0x40e258]
mov byte [esp + 0x48], 0x27
push ecx
push ebx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404b70
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x4c], bl
call fcn.00404d70
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], ebx
pop edi
cmp eax, ebx
pop ebx
jne 0x402574
mov eax, 0x40e254
mov ecx, dword [esp + 0x10]
lea edx, [esp + 4]
push edx
push ecx
push eax
call fcn.004018f0
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x24]
push edx
push ecx
push eax
call fcn.00401a40
add esp, 0x18
call eax
push 1
lea ecx, [esp + 0xc]
mov dword [esp + 0x44], 0xffffffff
call fcn.00404d70
mov ecx, dword [esp + 0x38]
xor eax, eax
mov dword fs:[0], ecx
add esp, 0x44
ret