Function at 0x403760
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
push edi
mov byte [ebp - 0x28], 0
mov byte [ebp - 0x27], 0x11
mov byte [ebp - 0x26], 0x24
mov byte [ebp - 0x25], 0x5a
mov byte [ebp - 0x24], 0x24
mov byte [ebp - 0x23], 0x3f
mov byte [ebp - 0x22], 0x24
mov byte [ebp - 0x21], 0x2a
mov byte [ebp - 0x20], 0x24
mov byte [ebp - 0x1f], 0x5a
mov byte [ebp - 0x1e], 0x24
mov byte [ebp - 0x1d], 0x5f
mov byte [ebp - 0x1c], 0x24
mov byte [ebp - 0x1b], 0x12
mov byte [ebp - 0x1a], 0x24
mov byte [ebp - 0x19], 0x6c
mov byte [ebp - 0x18], 0x24
mov byte [ebp - 0x17], 0x57
mov byte [ebp - 0x16], 0x24
mov byte [ebp - 0x15], 0x35
mov byte [ebp - 0x14], 0x24
mov byte [ebp - 0x13], 0x5f
mov byte [ebp - 0x12], 0x24
mov byte [ebp - 0x11], 0x5f
mov byte [ebp - 0x10], 0x24
mov byte [ebp - 0xf], 0x24
mov byte [ebp - 0xe], 0x24
mov al, byte [ebp - 0x27]
cmp byte [ebp - 0x28], 0
jne 0x40380a
xor esi, esi
lea edi, [esi + 0x7f]
mov al, byte [ebp + esi - 0x27]
mov ecx, 0x24
movzx eax, al
sub ecx, eax
lea eax, [ecx + ecx*2]
shl eax, 3
cdq
idiv edi
lea eax, [edx + 0x7f]
cdq
idiv edi
mov byte [ebp + esi - 0x27], dl
inc esi
cmp esi, 0x1a
jb 0x4037e3
mov eax, dword fs:[0x30]
mov ecx, 3
mov edi, 5
mov dword [ebp - 8], edi
mov esi, dword [eax + 0xc]
lea ebx, [ecx - 1]
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403874
add eax, ebx
add eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x40384f
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x40390f
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x40386d
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403855
jmp 0x40390f
and eax, 0x80000001
jns 0x403882
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x4038ab
mov eax, ebx
sub eax, esi
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x40390f
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403898
jmp 0x40390f
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x4038bc
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x40396f
mov ecx, dword [ebp - 4]
lea eax, [esi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x4038e1
dec eax
or eax, 0xfffffffe
add eax, 1
jne 0x40390a
mov eax, dword [ebp - 4]
cdq
idiv edi
mov eax, dword [ebp - 4]
test edx, edx
je 0x4038f3
dec eax
jmp 0x4038f4
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403908
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x4038e3
mov ecx, 3
mov edi, dword [esi + 0x10]
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], edi
test edx, edx
je 0x4039c3
add eax, 2
add eax, edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403946
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x403a63
nop dword [eax]
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403968
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403950
jmp 0x403a63
mov eax, dword [ebp - 4]
cdq
idiv edi
test edx, edx
je 0x40390f
mov eax, dword [ebp - 4]
lea ecx, [esi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov ecx, 3
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x40390f
nop dword [eax + eax]
mov eax, dword [ebp - 4]
cdq
idiv edi
mov eax, dword [ebp - 4]
test edx, edx
je 0x4039b0
inc eax
jmp 0x4039b1
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x4039a0
jmp 0x40390f
and eax, 0x80000001
jns 0x4039d1
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x4039fa
mov eax, ebx
sub eax, edi
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403a63
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x4039e7
jmp 0x403a63
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403a0b
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403abf
mov ecx, dword [ebp - 4]
lea eax, [edi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403a30
dec eax
or eax, 0xfffffffe
add eax, 1
jne 0x403a5e
mov ecx, 5
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403a47
dec eax
jmp 0x403a48
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403a5c
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403a37
mov ecx, 3
mov esi, dword [edi + 0x10]
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403b13
add eax, 2
add eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403a97
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x403c15
nop dword [eax]
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403ab8
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403aa0
jmp 0x403c15
mov eax, dword [ebp - 4]
mov esi, 5
cdq
idiv esi
test edx, edx
je 0x403a63
mov eax, dword [ebp - 4]
lea ecx, [edi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov ecx, 3
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403a63
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403b00
inc eax
jmp 0x403b01
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403af0
jmp 0x403a63
and eax, 0x80000001
jns 0x403b21
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403b56
mov eax, ebx
sub eax, esi
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403c15
nop dword [eax + eax]
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403b40
jmp 0x403c15
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403b67
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403bbe
mov ecx, dword [ebp - 4]
lea eax, [esi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403b88
dec eax
or eax, 0xfffffffe
add eax, 1
mov esi, 5
jne 0x403bb7
nop
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403ba0
dec eax
jmp 0x403ba1
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403bb5
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403b90
mov ecx, 3
jmp 0x403c1a
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 8]
test edx, edx
je 0x403c15
mov eax, dword [ebp - 4]
lea ecx, [esi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov ecx, 3
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403c15
mov esi, 5
nop dword [eax]
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403c00
inc eax
jmp 0x403c01
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403bf0
jmp 0x403c1a
mov ecx, 3
mov esi, 5
mov edi, dword [edi]
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403c6f
add eax, 2
add eax, edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403c49
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x403d0c
nop
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403c68
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403c50
jmp 0x403d0c
and eax, 0x80000001
jns 0x403c7d
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403ca6
mov eax, ebx
sub eax, edi
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403d0c
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403c93
jmp 0x403d0c
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403cb7
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403d6f
mov ecx, dword [ebp - 4]
lea eax, [edi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403cdc
dec eax
or eax, 0xfffffffe
add eax, 1
jne 0x403d07
nop
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403cf0
dec eax
jmp 0x403cf1
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403d05
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403ce0
mov ecx, 3
mov esi, dword [edi + 0x18]
test esi, esi
je 0x403ecc
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403dc3
add eax, 2
add eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403d48
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x403ebe
nop
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403d68
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403d50
jmp 0x403ebe
mov eax, dword [ebp - 4]
cdq
idiv esi
test edx, edx
je 0x403d0c
mov eax, dword [ebp - 4]
lea ecx, [edi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov ecx, 3
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403d0c
nop dword [eax + eax]
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403db0
inc eax
jmp 0x403db1
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403da0
jmp 0x403d0c
and eax, 0x80000001
jns 0x403dd1
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403e06
mov eax, ebx
sub eax, esi
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403ebe
nop dword [eax + eax]
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403df0
jmp 0x403ebe
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403e17
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403e6c
mov ecx, dword [ebp - 4]
lea eax, [esi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403e38
dec eax
or eax, 0xfffffffe
add eax, 1
jne 0x403ebe
mov ecx, 5
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403e53
dec eax
jmp 0x403e54
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403e68
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403e43
jmp 0x403ebe
mov eax, dword [ebp - 4]
mov ecx, 5
cdq
idiv ecx
test edx, edx
je 0x403ebe
mov eax, dword [ebp - 4]
lea ecx, [esi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov ecx, 3
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
jne 0x403ebe
mov esi, 5
nop
mov eax, dword [ebp - 4]
cdq
idiv esi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403eb0
inc eax
jmp 0x403eb1
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv ecx
test edx, edx
je 0x403ea0
mov ecx, edi
call fcn.00403420
cmp eax, 0x240dfbc0
je 0x403ed5
cmp dword [ebp - 0xc], edi
jne 0x403c10
mov esi, dword [edi + 0x18]
mov edi, 3
mov dword [ebp - 4], 0x13c380
mov eax, dword [ebp - 4]
cdq
idiv edi
mov eax, dword [ebp - 4]
test edx, edx
je 0x403f33
add eax, 2
add eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403f0a
dec eax
or eax, 0xfffffffc
add eax, 1
jne 0x40402e
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403f28
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403f10
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
and eax, 0x80000001
jns 0x403f41
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403f7a
sub ebx, esi
add ebx, dword [ebp - 4]
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 4]
cdq
idiv edi
test edx, edx
jne 0x40402e
nop dword [eax]
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv edi
test edx, edx
je 0x403f60
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
and eax, 0x80000003
jns 0x403f8b
dec eax
or eax, 0xfffffffc
add eax, 1
je 0x403fe7
mov ecx, dword [ebp - 4]
lea eax, [esi + 3]
add ecx, ebx
imul ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403fac
dec eax
or eax, 0xfffffffe
add eax, 1
jne 0x40402e
mov ecx, 5
mov eax, dword [ebp - 4]
cdq
idiv ecx
mov eax, dword [ebp - 4]
test edx, edx
je 0x403fc7
dec eax
jmp 0x403fc8
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
and eax, 0x80000001
jns 0x403fdc
dec eax
or eax, 0xfffffffe
add eax, 1
je 0x403fb7
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
mov ebx, 5
cdq
idiv ebx
test edx, edx
je 0x40402e
mov eax, dword [ebp - 4]
lea ecx, [esi + 0x17]
add eax, 0xb
cdq
idiv ecx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv edi
test edx, edx
jne 0x40402e
nop
mov eax, dword [ebp - 4]
cdq
idiv ebx
mov eax, dword [ebp - 4]
test edx, edx
je 0x404020
inc eax
jmp 0x404021
dec eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv edi
test edx, edx
je 0x404010
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret