Function at 0x40c7f0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x475b6c
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x4b34c4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
test byte [0x4bc868], 1
jne 0x40cdc0
or dword [0x4bc868], 1
mov dword [ebp - 4], ebx
push 1
mov edi, 0xf
push 0x4908f0
mov ecx, 0x4bc478
mov dword [0x4bc48c], edi
mov dword [0x4bc488], ebx
mov byte [0x4bc478], bl
call fcn.004059e0
mov byte [ebp - 4], 1
push 1
push 0x4908ec
mov ecx, 0x4bc494
mov dword [0x4bc4a8], edi
mov dword [0x4bc4a4], ebx
mov byte [0x4bc494], bl
call fcn.004059e0
mov byte [ebp - 4], 2
push 1
push str.C0987654321ZYXWVUTSRQPONMLKJIHGFDBA
mov ecx, 0x4bc4b0
mov dword [0x4bc4c4], edi
mov dword [0x4bc4c0], ebx
mov byte [0x4bc4b0], bl
call fcn.004059e0
mov byte [ebp - 4], 3
push 1
push 0x4908e8
mov ecx, 0x4bc4cc
mov dword [0x4bc4e0], edi
mov dword [0x4bc4dc], ebx
mov byte [0x4bc4cc], bl
call fcn.004059e0
mov byte [ebp - 4], 4
push 1
push 0x490530
mov ecx, 0x4bc4e8
mov dword [0x4bc4fc], edi
mov dword [0x4bc4f8], ebx
mov byte [0x4bc4e8], bl
call fcn.004059e0
mov byte [ebp - 4], 5
push 1
push 0x4908e4
mov ecx, 0x4bc504
mov dword [0x4bc518], edi
mov dword [0x4bc514], ebx
mov byte [0x4bc504], bl
call fcn.004059e0
mov byte [ebp - 4], 6
push 1
push 0x4908e0
mov ecx, 0x4bc520
mov dword [0x4bc534], edi
mov dword [0x4bc530], ebx
mov byte [0x4bc520], bl
call fcn.004059e0
mov byte [ebp - 4], 7
push 1
push 0x4908dc
mov ecx, 0x4bc53c
mov dword [0x4bc550], edi
mov dword [0x4bc54c], ebx
mov byte [0x4bc53c], bl
call fcn.004059e0
mov byte [ebp - 4], 8
push 1
mov dword [0x4bc56c], edi
mov dword [0x4bc568], ebx
mov byte [0x4bc558], bl
push 0x4908d8
mov ecx, 0x4bc558
call fcn.004059e0
mov byte [ebp - 4], 9
push 1
push 0x4908d4
mov ecx, 0x4bc574
mov dword [0x4bc588], edi
mov dword [0x4bc584], ebx
mov byte [0x4bc574], bl
call fcn.004059e0
mov byte [ebp - 4], 0xa
push 1
push 0x4908d0
mov ecx, 0x4bc590
mov dword [0x4bc5a4], edi
mov dword [0x4bc5a0], ebx
mov byte [0x4bc590], bl
call fcn.004059e0
mov byte [ebp - 4], 0xb
push 1
push 0x4908cc
mov ecx, 0x4bc5ac
mov dword [0x4bc5c0], edi
mov dword [0x4bc5bc], ebx
mov byte [0x4bc5ac], bl
call fcn.004059e0
mov byte [ebp - 4], 0xc
push 1
push 0x4908c8
mov ecx, 0x4bc5c8
mov dword [0x4bc5dc], edi
mov dword [0x4bc5d8], ebx
mov byte [0x4bc5c8], bl
call fcn.004059e0
mov byte [ebp - 4], 0xd
push 1
push 0x4908c4
mov ecx, 0x4bc5e4
mov dword [0x4bc5f8], edi
mov dword [0x4bc5f4], ebx
mov byte [0x4bc5e4], bl
call fcn.004059e0
mov byte [ebp - 4], 0xe
push 1
push 0x4908c0
mov ecx, 0x4bc600
mov dword [0x4bc614], edi
mov dword [0x4bc610], ebx
mov byte [0x4bc600], bl
call fcn.004059e0
mov byte [ebp - 4], 0xf
push 1
push 0x4908bc
mov ecx, 0x4bc61c
mov dword [0x4bc630], edi
mov dword [0x4bc62c], ebx
mov byte [0x4bc61c], bl
call fcn.004059e0
mov byte [ebp - 4], 0x10
push 1
push 0x4908b8
mov ecx, 0x4bc638
mov dword [0x4bc64c], edi
mov dword [0x4bc648], ebx
mov byte [0x4bc638], bl
call fcn.004059e0
mov byte [ebp - 4], 0x11
push 1
mov dword [0x4bc668], edi
mov dword [0x4bc664], ebx
mov byte [0x4bc654], bl
push 0x4908b4
mov ecx, 0x4bc654
call fcn.004059e0
mov byte [ebp - 4], 0x12
push 1
push 0x4908b0
mov ecx, 0x4bc670
mov dword [0x4bc684], edi
mov dword [0x4bc680], ebx
mov byte [0x4bc670], bl
call fcn.004059e0
mov byte [ebp - 4], 0x13
push 1
push 0x4908ac
mov ecx, 0x4bc68c
mov dword [0x4bc6a0], edi
mov dword [0x4bc69c], ebx
mov byte [0x4bc68c], bl
call fcn.004059e0
mov byte [ebp - 4], 0x14
push 1
push 0x4908a8
mov ecx, 0x4bc6a8
mov dword [0x4bc6bc], edi
mov dword [0x4bc6b8], ebx
mov byte [0x4bc6a8], bl
call fcn.004059e0
mov byte [ebp - 4], 0x15
push 1
push 0x4908a4
mov ecx, 0x4bc6c4
mov dword [0x4bc6d8], edi
mov dword [0x4bc6d4], ebx
mov byte [0x4bc6c4], bl
call fcn.004059e0
mov byte [ebp - 4], 0x16
push 1
push 0x4908a0
mov ecx, 0x4bc6e0
mov dword [0x4bc6f4], edi
mov dword [0x4bc6f0], ebx
mov byte [0x4bc6e0], bl
call fcn.004059e0
mov byte [ebp - 4], 0x17
push 1
push 0x49089c
mov ecx, 0x4bc6fc
mov dword [0x4bc710], edi
mov dword [0x4bc70c], ebx
mov byte [0x4bc6fc], bl
call fcn.004059e0
mov byte [ebp - 4], 0x18
push 1
push 0x490898
mov ecx, 0x4bc718
mov dword [0x4bc72c], edi
mov dword [0x4bc728], ebx
mov byte [0x4bc718], bl
call fcn.004059e0
mov byte [ebp - 4], 0x19
push 1
push 0x490894
mov ecx, 0x4bc734
mov dword [0x4bc748], edi
mov dword [0x4bc744], ebx
mov byte [0x4bc734], bl
call fcn.004059e0
mov byte [ebp - 4], 0x1a
push 1
mov dword [0x4bc764], edi
mov dword [0x4bc760], ebx
mov byte [0x4bc750], bl
push 0x490890
mov ecx, 0x4bc750
call fcn.004059e0
mov byte [ebp - 4], 0x1b
push 1
push 0x49088c
mov ecx, 0x4bc76c
mov dword [0x4bc780], edi
mov dword [0x4bc77c], ebx
mov byte [0x4bc76c], bl
call fcn.004059e0
mov byte [ebp - 4], 0x1c
push 1
push 0x490888
mov ecx, 0x4bc788
mov dword [0x4bc79c], edi
mov dword [0x4bc798], ebx
mov byte [0x4bc788], bl
call fcn.004059e0
mov byte [ebp - 4], 0x1d
push 1
push 0x490884
mov ecx, 0x4bc7a4
mov dword [0x4bc7b8], edi
mov dword [0x4bc7b4], ebx
mov byte [0x4bc7a4], bl
call fcn.004059e0
mov byte [ebp - 4], 0x1e
push 1
push 0x490880
mov ecx, 0x4bc7c0
mov dword [0x4bc7d4], edi
mov dword [0x4bc7d0], ebx
mov byte [0x4bc7c0], bl
call fcn.004059e0
mov byte [ebp - 4], 0x1f
push 1
push 0x49087c
mov ecx, 0x4bc7dc
mov dword [0x4bc7f0], edi
mov dword [0x4bc7ec], ebx
mov byte [0x4bc7dc], bl
call fcn.004059e0
mov byte [ebp - 4], 0x20
push 1
push 0x490878
mov ecx, 0x4bc7f8
mov dword [0x4bc80c], edi
mov dword [0x4bc808], ebx
mov byte [0x4bc7f8], bl
call fcn.004059e0
mov byte [ebp - 4], 0x21
push 1
push 0x490874
mov ecx, 0x4bc814
mov dword [0x4bc828], edi
mov dword [0x4bc824], ebx
mov byte [0x4bc814], bl
call fcn.004059e0
mov byte [ebp - 4], 0x22
push 1
push 0x490870
mov ecx, 0x4bc830
mov dword [0x4bc844], edi
mov dword [0x4bc840], ebx
mov byte [0x4bc830], bl
call fcn.004059e0
mov byte [ebp - 4], 0x23
push 1
mov dword [0x4bc860], edi
mov dword [0x4bc85c], ebx
mov byte [0x4bc84c], bl
push 0x49086c
mov ecx, 0x4bc84c
call fcn.004059e0
push 0x4783b0
call fcn.0042190c
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x10], ebx
mov bl, 1
mov esi, 0x4bc478
lea ebx, [ebx]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
shr eax, 3
test byte [eax + ecx], bl
je 0x40cde8
mov edi, dword [ebp + 0xc]
mov ecx, esi
call fcn.0040e060
inc dword [ebp - 0x10]
add esi, 0x1c
rol bl, 1
cmp esi, 0x4bc868
jl 0x40cdd0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret