Function at 0x4158e2
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fbfab
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x1fe0
call fcn.00472c70
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1ebc], ecx
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x18]
call fcn.004df077
mov byte [ebp - 4], 3
mov byte [ebp - 4], 4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1ec0], eax
mov ecx, dword [ebp - 0x1ec0]
sub ecx, 1
mov dword [ebp - 0x1ec0], ecx
cmp dword [ebp - 0x1ec0], 0x19
ja case.default.0x415953
mov edx, dword [ebp - 0x1ec0]
jmp dword [edx*4 + 0x416455]
mov eax, dword [ebp - 0x1ebc]
xor ecx, ecx
cmp dword [eax + 0xfdc], 0
sete cl
mov edx, dword [ebp - 0x1ebc]
mov dword [edx + 0xfdc], ecx
push 0
push 0
push 5
mov ecx, dword [ebp - 0x1ebc]
call fcn.0041e6a0
jmp case.default.0x415953
push 5
mov ecx, 0x55163c
call fcn.004dc167
push 0
mov ecx, 0x55163c
call fcn.0042d4b3
jmp case.default.0x415953
push ecx
mov esi, esp
mov dword [ebp - 0x1e24], esp
lea eax, [ebp + 0x10]
push eax
push 0x539870
lea ecx, [ebp + 0xc]
push ecx
push 0x539874
lea edx, [ebp - 0x1e28]
push edx
call fcn.004dce07
mov dword [ebp - 0x1ec4], eax
mov eax, dword [ebp - 0x1ec4]
mov dword [ebp - 0x1ec8], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x1ec8]
push ecx
lea edx, [ebp - 0x1e2c]
push edx
call fcn.004dcd93
mov dword [ebp - 0x1ecc], eax
mov eax, dword [ebp - 0x1ecc]
mov dword [ebp - 0x1ed0], eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1ed0]
push ecx
push esi
call fcn.004dcd2d
mov dword [ebp - 0x1ed4], eax
mov edx, dword [ebp - 0x1ed4]
mov dword [ebp - 0x1ed8], edx
mov byte [ebp - 4], 7
push ecx
mov ecx, esp
mov dword [ebp - 0x1e30], esp
push 0x53987c
call fcn.004dcb6c
mov dword [ebp - 0x1edc], eax
mov eax, dword [ebp - 0x1edc]
mov dword [ebp - 0x1ee0], eax
mov byte [ebp - 4], 8
mov ecx, 0x5500d8
mov byte [ebp - 4], 6
call fcn.0040c8e1
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1e2c]
call fcn.004dcafe
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1e28]
call fcn.004dcafe
lea ecx, [ebp + 0x10]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004dc873
mov byte [ebp - 4], 9
push ecx
mov ecx, esp
mov dword [ebp - 0x1e34], esp
push 0x553640
call fcn.004dcb6c
mov dword [ebp - 0x1ee4], eax
mov edx, dword [ebp - 0x1ee4]
mov dword [ebp - 0x1ee8], edx
mov byte [ebp - 4], 0xa
push ecx
mov ecx, esp
mov dword [ebp - 0x1e38], esp
lea eax, [ebp - 0x1c]
push eax
call fcn.004dc873
mov dword [ebp - 0x1eec], eax
mov ecx, dword [ebp - 0x1eec]
mov dword [ebp - 0x1ef0], ecx
mov byte [ebp - 4], 0xb
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x1e3c], esp
push 0x539884
call fcn.004dcb6c
mov dword [ebp - 0x1ef4], eax
mov edx, dword [ebp - 0x1ef4]
mov dword [ebp - 0x1ef8], edx
mov byte [ebp - 4], 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x1e40], esp
lea eax, [ebp + 0xc]
push eax
call fcn.004dc873
mov dword [ebp - 0x1efc], eax
mov ecx, dword [ebp - 0x1efc]
mov dword [ebp - 0x1f00], ecx
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1ebc]
mov eax, dword [edx + 0x4d0]
push eax
mov ecx, dword [ebp - 0x1ebc]
mov byte [ebp - 4], 9
call fcn.004155d7
push ecx
mov ecx, esp
mov dword [ebp - 0x1e44], esp
push 0x553644
call fcn.004dcb6c
mov dword [ebp - 0x1f04], eax
mov ecx, dword [ebp - 0x1f04]
mov dword [ebp - 0x1f08], ecx
mov byte [ebp - 4], 0xe
push ecx
mov ecx, esp
mov dword [ebp - 0x1e48], esp
lea edx, [ebp - 0x1c]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f0c], eax
mov eax, dword [ebp - 0x1f0c]
mov dword [ebp - 0x1f10], eax
mov byte [ebp - 4], 0xf
push 1
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x4e0
push ecx
mov edx, esp
mov dword [ebp - 0x1e4c], esp
push ecx
mov ecx, edx
call fcn.004dc873
mov dword [ebp - 0x1f14], eax
mov eax, dword [ebp - 0x1f14]
mov dword [ebp - 0x1f18], eax
mov byte [ebp - 4], 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x1e50], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f1c], eax
mov eax, dword [ebp - 0x1f1c]
mov dword [ebp - 0x1f20], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x1ebc]
mov edx, dword [ecx + 0x4d0]
push edx
push 2
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x584
mov byte [ebp - 4], 9
call fcn.004031dd
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1c]
call fcn.004dcafe
jmp case.default.0x415953
push 0
lea ecx, [ebp - 0x69c]
call fcn.0042fd60
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x69c]
call fcn.004d8348
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x69c]
call fcn.0042fdf8
jmp case.default.0x415953
push 0
lea ecx, [ebp - 0x111c]
call fcn.00435560
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x111c]
call fcn.004d8348
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x111c]
call fcn.0043562a
jmp case.default.0x415953
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044ecc2
jmp case.default.0x415953
push 1
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e14c
jmp case.default.0x415953
push 0
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e14c
jmp case.default.0x415953
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044d29c
jmp case.default.0x415953
push 1
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e264
jmp case.default.0x415953
push 2
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e264
jmp case.default.0x415953
push 3
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e264
jmp case.default.0x415953
push 4
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044e264
jmp case.default.0x415953
push ecx
mov ecx, esp
mov dword [ebp - 0x1e54], esp
lea eax, [ebp + 0xc]
push eax
call fcn.004dc873
mov dword [ebp - 0x1f24], eax
mov ecx, dword [ebp - 0x1f24]
mov dword [ebp - 0x1f28], ecx
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
mov byte [ebp - 4], 4
call fcn.0044ecee
jmp case.default.0x415953
push ecx
mov ecx, esp
mov dword [ebp - 0x1e58], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f2c], eax
mov eax, dword [ebp - 0x1f2c]
mov dword [ebp - 0x1f30], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
mov byte [ebp - 4], 4
call fcn.0044ed6b
jmp case.default.0x415953
push ecx
mov ecx, esp
mov dword [ebp - 0x1e5c], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f34], eax
mov eax, dword [ebp - 0x1f34]
mov dword [ebp - 0x1f38], eax
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
mov byte [ebp - 4], 4
call fcn.0044f13b
jmp case.default.0x415953
lea ecx, [ebp + 0xc]
call fcn.00458a80
push eax
call fcn.00471dcd
add esp, 4
push eax
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
call fcn.0044ed4a
jmp case.default.0x415953
push ecx
mov ecx, esp
mov dword [ebp - 0x1e60], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f3c], eax
mov eax, dword [ebp - 0x1f3c]
mov dword [ebp - 0x1f40], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x1f8
mov byte [ebp - 4], 4
call fcn.0044f23e
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0xbb8
call fcn.0040586b
jmp case.default.0x415953
push 5
mov ecx, dword [ebp - 0x1ebc]
call fcn.00401940
push 0
mov ecx, dword [0x5509bc]
call fcn.00453b71
jmp case.default.0x415953
push 1
mov ecx, dword [0x5509bc]
call fcn.00453b71
push 0
push 0x3e8
push 5
mov ecx, dword [ebp - 0x1ebc]
call fcn.00401910
jmp case.default.0x415953
push ecx
mov ecx, esp
mov dword [ebp - 0x1e64], esp
lea edx, [ebp + 0xc]
push edx
push 0x53988c
push ecx
call fcn.004dce07
mov dword [ebp - 0x1f44], eax
mov eax, dword [ebp - 0x1f44]
mov dword [ebp - 0x1f48], eax
mov byte [ebp - 4], 0x18
push ecx
mov ecx, esp
mov dword [ebp - 0x1e68], esp
push 0x539898
call fcn.004dcb6c
mov dword [ebp - 0x1f4c], eax
mov ecx, dword [ebp - 0x1f4c]
mov dword [ebp - 0x1f50], ecx
mov byte [ebp - 4], 0x19
mov ecx, 0x5500d8
mov byte [ebp - 4], 4
call fcn.0040c8e1
push ecx
mov ecx, esp
mov dword [ebp - 0x1e6c], esp
push 0x553648
call fcn.004dcb6c
mov dword [ebp - 0x1f54], eax
mov edx, dword [ebp - 0x1f54]
mov dword [ebp - 0x1f58], edx
mov byte [ebp - 4], 0x1a
push ecx
mov ecx, esp
mov dword [ebp - 0x1e70], esp
push 0x55364c
call fcn.004dcb6c
mov dword [ebp - 0x1f5c], eax
mov eax, dword [ebp - 0x1f5c]
mov dword [ebp - 0x1f60], eax
mov byte [ebp - 4], 0x1b
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x1e74], esp
push 0x5398a0
call fcn.004dcb6c
mov dword [ebp - 0x1f64], eax
mov ecx, dword [ebp - 0x1f64]
mov dword [ebp - 0x1f68], ecx
mov byte [ebp - 4], 0x1c
push ecx
mov ecx, esp
mov dword [ebp - 0x1e78], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f6c], eax
mov eax, dword [ebp - 0x1f6c]
mov dword [ebp - 0x1f70], eax
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x1ebc]
mov edx, dword [ecx + 0x4d0]
push edx
mov ecx, dword [ebp - 0x1ebc]
mov byte [ebp - 4], 4
call fcn.004155d7
push ecx
mov ecx, esp
mov dword [ebp - 0x1e7c], esp
push 0x553650
call fcn.004dcb6c
mov dword [ebp - 0x1f74], eax
mov eax, dword [ebp - 0x1f74]
mov dword [ebp - 0x1f78], eax
mov byte [ebp - 4], 0x1e
push ecx
mov ecx, esp
mov dword [ebp - 0x1e80], esp
push 0x553654
call fcn.004dcb6c
mov dword [ebp - 0x1f7c], eax
mov ecx, dword [ebp - 0x1f7c]
mov dword [ebp - 0x1f80], ecx
mov byte [ebp - 4], 0x1f
push 0
mov edx, dword [ebp - 0x1ebc]
add edx, 0x4e0
push ecx
mov ecx, esp
mov dword [ebp - 0x1e84], esp
push edx
call fcn.004dc873
mov dword [ebp - 0x1f84], eax
mov eax, dword [ebp - 0x1f84]
mov dword [ebp - 0x1f88], eax
mov byte [ebp - 4], 0x20
push ecx
mov ecx, esp
mov dword [ebp - 0x1e88], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1f8c], eax
mov eax, dword [ebp - 0x1f8c]
mov dword [ebp - 0x1f90], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x1ebc]
mov edx, dword [ecx + 0x4d0]
push edx
push 2
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x584
mov byte [ebp - 4], 4
call fcn.004031dd
jmp case.default.0x415953
push ecx
mov esi, esp
mov dword [ebp - 0x1e8c], esp
lea eax, [ebp + 0x10]
push eax
push 0x5398a8
lea ecx, [ebp + 0xc]
push ecx
push 0x5398ac
lea edx, [ebp - 0x1e90]
push edx
call fcn.004dce07
mov dword [ebp - 0x1f94], eax
mov eax, dword [ebp - 0x1f94]
mov dword [ebp - 0x1f98], eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x1f98]
push ecx
lea edx, [ebp - 0x1e94]
push edx
call fcn.004dcd93
mov dword [ebp - 0x1f9c], eax
mov eax, dword [ebp - 0x1f9c]
mov dword [ebp - 0x1fa0], eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x1fa0]
push ecx
push esi
call fcn.004dcd2d
mov dword [ebp - 0x1fa4], eax
mov edx, dword [ebp - 0x1fa4]
mov dword [ebp - 0x1fa8], edx
mov byte [ebp - 4], 0x24
push ecx
mov ecx, esp
mov dword [ebp - 0x1e98], esp
push 0x5398b8
call fcn.004dcb6c
mov dword [ebp - 0x1fac], eax
mov eax, dword [ebp - 0x1fac]
mov dword [ebp - 0x1fb0], eax
mov byte [ebp - 4], 0x25
mov ecx, 0x5500d8
mov byte [ebp - 4], 0x23
call fcn.0040c8e1
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x1e94]
call fcn.004dcafe
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1e90]
call fcn.004dcafe
push ecx
mov ecx, esp
mov dword [ebp - 0x1e9c], esp
lea edx, [ebp + 0x14]
push edx
call fcn.004dc873
mov dword [ebp - 0x1fb4], eax
mov eax, dword [ebp - 0x1fb4]
mov dword [ebp - 0x1fb8], eax
mov byte [ebp - 4], 0x26
push ecx
mov ecx, esp
mov dword [ebp - 0x1ea0], esp
lea edx, [ebp + 0x10]
push edx
call fcn.004dc873
mov dword [ebp - 0x1fbc], eax
mov eax, dword [ebp - 0x1fbc]
mov dword [ebp - 0x1fc0], eax
mov byte [ebp - 4], 0x27
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x1ea4], esp
push 0x5398c0
call fcn.004dcb6c
mov dword [ebp - 0x1fc4], eax
mov ecx, dword [ebp - 0x1fc4]
mov dword [ebp - 0x1fc8], ecx
mov byte [ebp - 4], 0x28
push ecx
mov ecx, esp
mov dword [ebp - 0x1ea8], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1fcc], eax
mov eax, dword [ebp - 0x1fcc]
mov dword [ebp - 0x1fd0], eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x1ebc]
mov edx, dword [ecx + 0x4d0]
push edx
mov ecx, dword [ebp - 0x1ebc]
mov byte [ebp - 4], 4
call fcn.004155d7
push ecx
mov ecx, esp
mov dword [ebp - 0x1eac], esp
lea eax, [ebp + 0x14]
push eax
call fcn.004dc873
mov dword [ebp - 0x1fd4], eax
mov ecx, dword [ebp - 0x1fd4]
mov dword [ebp - 0x1fd8], ecx
mov byte [ebp - 4], 0x2a
push ecx
mov ecx, esp
mov dword [ebp - 0x1eb0], esp
lea edx, [ebp + 0x10]
push edx
call fcn.004dc873
mov dword [ebp - 0x1fdc], eax
mov eax, dword [ebp - 0x1fdc]
mov dword [ebp - 0x1fe0], eax
mov byte [ebp - 4], 0x2b
push 1
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x4e0
push ecx
mov edx, esp
mov dword [ebp - 0x1eb4], esp
push ecx
mov ecx, edx
call fcn.004dc873
mov dword [ebp - 0x1fe4], eax
mov eax, dword [ebp - 0x1fe4]
mov dword [ebp - 0x1fe8], eax
mov byte [ebp - 4], 0x2c
push ecx
mov ecx, esp
mov dword [ebp - 0x1eb8], esp
lea edx, [ebp + 0xc]
push edx
call fcn.004dc873
mov dword [ebp - 0x1fec], eax
mov eax, dword [ebp - 0x1fec]
mov dword [ebp - 0x1ff0], eax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x1ebc]
mov edx, dword [ecx + 0x4d0]
push edx
push 2
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x584
mov byte [ebp - 4], 4
call fcn.004031dd
jmp case.default.0x415953
push 5
mov ecx, 0x55163c
call fcn.0042d4b3
push 5
mov ecx, 0x55163c
call fcn.004dc167
jmp case.default.0x415953
push 0
lea ecx, [ebp - 0x179c]
call fcn.0042fd60
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0x1740], 0
lea ecx, [ebp - 0x179c]
call fcn.004d8348
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x179c]
call fcn.0042fdf8
jmp case.default.0x415953
push 0
lea ecx, [ebp - 0x1e1c]
call fcn.0042fd60
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0x1dc0], 1
lea ecx, [ebp - 0x1e1c]
call fcn.004d8348
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1e1c]
call fcn.0042fdf8
jmp case.default.0x415953
mov ecx, dword [ebp - 0x1ebc]
add ecx, 0x584
call fcn.00404d9e
jmp 0x41640c
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x18]
call fcn.0041e570
mov byte [ebp - 4], 1
lea ecx, [ebp + 0xc]
call fcn.004dcafe
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x10]
call fcn.004dcafe
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.004dcafe
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10