Function at 0x403584
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x36c
mov eax, dword [str._s_bin]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
push 0x411f30
push 0x411f40
call dword [0x41003c]
push eax
call dword [0x410030]
call eax
mov byte [ebp - 0x308], 0x7a
mov byte [ebp - 0x307], 0x7e
mov byte [ebp - 0x306], 0x1f
mov byte [ebp - 0x305], 0x72
mov byte [ebp - 0x304], 0x1e
mov byte [ebp - 0x303], 0x1f
mov byte [ebp - 0x302], 3
mov byte [ebp - 0x301], 0x69
mov byte [ebp - 0x300], 0x61
mov byte [ebp - 0x2ff], 0x61
mov byte [ebp - 0x2fe], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403525
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x308]
test edx, edx
je 0x403557
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x308]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x308], cl
jmp 0x403516
mov byte [ebp - 0x364], 0x5e
mov byte [ebp - 0x363], 0x48
mov byte [ebp - 0x362], 0x43
mov byte [ebp - 0x361], 0x49
mov byte [ebp - 0x360], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403595
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x364]
test edx, edx
je 0x4035c7
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x364]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x364], cl
jmp 0x403586
mov byte [ebp - 0x32c], 0x44
mov byte [ebp - 0x32b], 0x43
mov byte [ebp - 0x32a], 0x48
mov byte [ebp - 0x329], 0x59
mov byte [ebp - 0x328], 0x72
mov byte [ebp - 0x327], 0x4c
mov byte [ebp - 0x326], 0x49
mov byte [ebp - 0x325], 0x49
mov byte [ebp - 0x324], 0x5f
mov byte [ebp - 0x323], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403628
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x32c]
test edx, edx
je 0x40365a
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x32c]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x32c], cl
jmp 0x403619
mov byte [ebp - 0x354], 0x44
mov byte [ebp - 0x353], 0x43
mov byte [ebp - 0x352], 0x48
mov byte [ebp - 0x351], 0x59
mov byte [ebp - 0x350], 0x72
mov byte [ebp - 0x34f], 0x43
mov byte [ebp - 0x34e], 0x59
mov byte [ebp - 0x34d], 0x42
mov byte [ebp - 0x34c], 0x4c
mov byte [ebp - 0x34b], 0
mov dword [ebp - 0x2d4], 0
jmp 0x4036bb
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x354]
test edx, edx
je 0x4036ed
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x354]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x354], cl
jmp 0x4036ac
mov byte [ebp - 0x2dc], 0x45
mov byte [ebp - 0x2db], 0x59
mov byte [ebp - 0x2da], 0x42
mov byte [ebp - 0x2d9], 0x43
mov byte [ebp - 0x2d8], 0x5e
mov byte [ebp - 0x2d7], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403732
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2dc]
test edx, edx
je 0x403764
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x2dc]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x2dc], cl
jmp 0x403723
mov byte [ebp - 0x2d0], 0x4a
mov byte [ebp - 0x2cf], 0x48
mov byte [ebp - 0x2ce], 0x59
mov byte [ebp - 0x2cd], 0x45
mov byte [ebp - 0x2cc], 0x42
mov byte [ebp - 0x2cb], 0x5e
mov byte [ebp - 0x2ca], 0x59
mov byte [ebp - 0x2c9], 0x4f
mov byte [ebp - 0x2c8], 0x54
mov byte [ebp - 0x2c7], 0x43
mov byte [ebp - 0x2c6], 0x4c
mov byte [ebp - 0x2c5], 0x40
mov byte [ebp - 0x2c4], 0x48
mov byte [ebp - 0x2c3], 0
mov dword [ebp - 0x2d4], 0
jmp 0x4037e1
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2d0]
test edx, edx
je 0x403813
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x2d0]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x2d0], cl
jmp 0x4037d2
mov byte [ebp - 0x35c], 0x4e
mov byte [ebp - 0x35b], 0x42
mov byte [ebp - 0x35a], 0x43
mov byte [ebp - 0x359], 0x43
mov byte [ebp - 0x358], 0x48
mov byte [ebp - 0x357], 0x4e
mov byte [ebp - 0x356], 0x59
mov byte [ebp - 0x355], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403866
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x35c]
test edx, edx
je 0x403898
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x35c]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x35c], cl
jmp 0x403857
mov byte [ebp - 0x314], 0x4e
mov byte [ebp - 0x313], 0x41
mov byte [ebp - 0x312], 0x42
mov byte [ebp - 0x311], 0x5e
mov byte [ebp - 0x310], 0x48
mov byte [ebp - 0x30f], 0x5e
mov byte [ebp - 0x30e], 0x42
mov byte [ebp - 0x30d], 0x4e
mov byte [ebp - 0x30c], 0x46
mov byte [ebp - 0x30b], 0x48
mov byte [ebp - 0x30a], 0x59
mov byte [ebp - 0x309], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403907
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x314]
test edx, edx
je 0x403939
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x314]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x314], cl
jmp 0x4038f8
mov byte [ebp - 0x2b4], 0x7a
mov byte [ebp - 0x2b3], 0x7e
mov byte [ebp - 0x2b2], 0x6c
mov byte [ebp - 0x2b1], 0x7e
mov byte [ebp - 0x2b0], 0x59
mov byte [ebp - 0x2af], 0x4c
mov byte [ebp - 0x2ae], 0x5f
mov byte [ebp - 0x2ad], 0x59
mov byte [ebp - 0x2ac], 0x58
mov byte [ebp - 0x2ab], 0x5d
mov byte [ebp - 0x2aa], 0
mov dword [ebp - 0x2d4], 0
jmp 0x4039a1
mov eax, dword [ebp - 0x2d4]
add eax, 1
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2b4]
test edx, edx
je 0x4039d3
mov eax, dword [ebp - 0x2d4]
movzx ecx, byte [ebp + eax - 0x2b4]
xor ecx, 0x2d
mov edx, dword [ebp - 0x2d4]
mov byte [ebp + edx - 0x2b4], cl
jmp 0x403992
mov byte [ebp - 0x320], 0x5e
mov byte [ebp - 0x31f], 0x42
mov byte [ebp - 0x31e], 0x4e
mov byte [ebp - 0x31d], 0x46
mov byte [ebp - 0x31c], 0x48
mov byte [ebp - 0x31b], 0x59
mov byte [ebp - 0x31a], 0
xor eax, eax
mov byte [ebp - 0x319], al
mov dword [ebp - 0x2d4], 0
jmp 0x403a27
mov ecx, dword [ebp - 0x2d4]
add ecx, 1
mov dword [ebp - 0x2d4], ecx
mov edx, dword [ebp - 0x2d4]
movzx eax, byte [ebp + edx - 0x320]
test eax, eax
je 0x403a59
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x320]
xor edx, 0x2d
mov eax, dword [ebp - 0x2d4]
mov byte [ebp + eax - 0x320], dl
jmp 0x403a18
mov byte [ebp - 0x2e4], 0x5f
mov byte [ebp - 0x2e3], 0x48
mov byte [ebp - 0x2e2], 0x4e
mov byte [ebp - 0x2e1], 0x5b
mov byte [ebp - 0x2e0], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403a97
mov ecx, dword [ebp - 0x2d4]
add ecx, 1
mov dword [ebp - 0x2d4], ecx
mov edx, dword [ebp - 0x2d4]
movzx eax, byte [ebp + edx - 0x2e4]
test eax, eax
je 0x403ac9
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2e4]
xor edx, 0x2d
mov eax, dword [ebp - 0x2d4]
mov byte [ebp + eax - 0x2e4], dl
jmp 0x403a88
mov byte [ebp - 0x2c0], 0x5a
mov byte [ebp - 0x2bf], 0x44
mov byte [ebp - 0x2be], 0x43
mov byte [ebp - 0x2bd], 0x44
mov byte [ebp - 0x2bc], 0x43
mov byte [ebp - 0x2bb], 0x48
mov byte [ebp - 0x2ba], 0x59
mov byte [ebp - 0x2b9], 3
mov byte [ebp - 0x2b8], 0x49
mov byte [ebp - 0x2b7], 0x41
mov byte [ebp - 0x2b6], 0x41
mov byte [ebp - 0x2b5], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403b38
mov ecx, dword [ebp - 0x2d4]
add ecx, 1
mov dword [ebp - 0x2d4], ecx
mov edx, dword [ebp - 0x2d4]
movzx eax, byte [ebp + edx - 0x2c0]
test eax, eax
je 0x403b6a
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2c0]
xor edx, 0x2d
mov eax, dword [ebp - 0x2d4]
mov byte [ebp + eax - 0x2c0], dl
jmp 0x403b29
mov byte [ebp - 0x2fc], 0x69
mov byte [ebp - 0x2fb], 0x48
mov byte [ebp - 0x2fa], 0x41
mov byte [ebp - 0x2f9], 0x48
mov byte [ebp - 0x2f8], 0x59
mov byte [ebp - 0x2f7], 0x48
mov byte [ebp - 0x2f6], 0x78
mov byte [ebp - 0x2f5], 0x5f
mov byte [ebp - 0x2f4], 0x41
mov byte [ebp - 0x2f3], 0x6e
mov byte [ebp - 0x2f2], 0x4c
mov byte [ebp - 0x2f1], 0x4e
mov byte [ebp - 0x2f0], 0x45
mov byte [ebp - 0x2ef], 0x48
mov byte [ebp - 0x2ee], 0x68
mov byte [ebp - 0x2ed], 0x43
mov byte [ebp - 0x2ec], 0x59
mov byte [ebp - 0x2eb], 0x5f
mov byte [ebp - 0x2ea], 0x54
mov byte [ebp - 0x2e9], 0
mov dword [ebp - 0x2d4], 0
jmp 0x403c11
mov ecx, dword [ebp - 0x2d4]
add ecx, 1
mov dword [ebp - 0x2d4], ecx
mov edx, dword [ebp - 0x2d4]
movzx eax, byte [ebp + edx - 0x2fc]
test eax, eax
je 0x403c43
mov ecx, dword [ebp - 0x2d4]
movzx edx, byte [ebp + ecx - 0x2fc]
xor edx, 0x2d
mov eax, dword [ebp - 0x2d4]
mov byte [ebp + eax - 0x2fc], dl
jmp 0x403c02
lea ecx, [ebp - 0x308]
push ecx
call dword [0x41003c]
mov dword [ebp - 0x318], eax
lea edx, [ebp - 0x2c0]
push edx
call dword [0x41003c]
mov dword [ebp - 0x2e8], eax
lea eax, [ebp - 0x364]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [0x410030]
mov dword [0x415b30], eax
lea edx, [ebp - 0x32c]
push edx
mov eax, dword [ebp - 0x318]
push eax
call dword [0x410030]
mov dword [0x415b48], eax
lea ecx, [ebp - 0x354]
push ecx
mov edx, dword [ebp - 0x318]
push edx
call dword [0x410030]
mov dword [0x415b40], eax
lea eax, [ebp - 0x2dc]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [0x410030]
mov dword [0x415b4c], eax
lea edx, [ebp - 0x2d0]
push edx
mov eax, dword [ebp - 0x318]
push eax
call dword [0x410030]
mov dword [0x415b44], eax
lea ecx, [ebp - 0x35c]
push ecx
mov edx, dword [ebp - 0x318]
push edx
call dword [0x410030]
mov dword [0x415b24], eax
lea eax, [ebp - 0x314]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [0x410030]
mov dword [0x415b2c], eax
lea edx, [ebp - 0x2b4]
push edx
mov eax, dword [ebp - 0x318]
push eax
call dword [0x410030]
mov dword [0x415b3c], eax
lea ecx, [ebp - 0x320]
push ecx
mov edx, dword [ebp - 0x318]
push edx
call dword [0x410030]
mov dword [0x415b34], eax
lea eax, [ebp - 0x2e4]
push eax
mov ecx, dword [ebp - 0x318]
push ecx
call dword [0x410030]
mov dword [0x415b20], eax
lea edx, [ebp - 0x2fc]
push edx
mov eax, dword [ebp - 0x2e8]
push eax
call dword [0x410030]
mov dword [0x415b38], eax
cmp dword [0x415b3c], 0
je 0x403d97
lea ecx, [ebp - 0x2a8]
push ecx
push 0x202
call dword [0x415b3c]
mov edx, dword [ebp + 8]
mov dword [0x415b50], edx
push 0x104
lea eax, [ebp - 0x110]
push eax
call dword [0x410024]
lea ecx, [ebp - 0x110]
add ecx, 0xffffffff
mov dword [ebp - 0x368], ecx
mov edx, dword [ebp - 0x368]
mov al, byte [edx + 1]
mov byte [ebp - 0x369], al
add dword [ebp - 0x368], 1
cmp byte [ebp - 0x369], 0
jne 0x403dc1
mov edi, dword [ebp - 0x368]
mov ecx, dword [0x411f48]
mov dword [edi], ecx
mov edx, dword [0x411f4c]
mov dword [edi + 4], edx
mov ax, word [str._program_name_unknown_]
mov word [edi + 8], ax
lea ecx, [ebp - 0x110]
push ecx
push 0
push 0x411f54
push 0x411f58
call dword [0x41001c]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 1
je 0x403e3e
push 0
push 0x4027e0
push 0
push 0x68
mov edx, dword [ebp + 8]
push edx
call dword [0x41016c]
push 0
push 0x4027e0
push 0
push 0x65
mov eax, dword [ebp + 8]
push eax
call dword [0x41017c]
mov dword [0x415b28], eax
push 5
mov ecx, dword [0x415b28]
push ecx
call dword [0x4101b0]
push 0
push 0
push 0
lea edx, [ebp - 0x348]
push edx
call dword [0x410174]
test eax, eax
je 0x403e9a
lea eax, [ebp - 0x348]
push eax
call dword [0x410198]
lea ecx, [ebp - 0x348]
push ecx
call dword [0x4101b4]
jmp 0x403e67
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00403ed7
mov esp, ebp
pop ebp
ret 0x10