Function at 0x403ee0
Capabilities:
Get hostname
Get session user name

Disassembly:
sub esp, 0x1f8
push ebx
push ebp
push esi
push edi
xor edi, edi
xor esi, esi
call fcn.00405250
call fcn.00405200
mov edx, eax
mov ebx, 1
cmp dx, di
mov dword [esp + 0x98], edx
jge 0x403f20
mov ebp, dword [esp + 0x20c]
movsx eax, dx
mov dword [ebp + 0x94], eax
jmp 0x404c5d
mov ebp, dword [esp + 0x20c]
mov dword [esp + 0x94], edi
mov ecx, 0x20
xor eax, eax
mov dword [ebp + 0x94], edi
lea edi, [esp + 0x14]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x14]
push 3
push ecx
push ebx
push edx
call fcn.004059e0
add esp, 0x10
mov eax, dword [esp + 0x98]
lea edx, [esp + 0x14]
push 0
push edx
push eax
call fcn.00405a00
add esp, 0xc
test eax, eax
jl 0x404c43
mov ecx, 0x32
xor eax, eax
lea edi, [esp + 0x140]
lea edx, [esp + 0x140]
rep stosd dword es:[edi], eax
mov cx, word [esp + 0x14]
push edx
mov word [esp + 0x144], cx
call fcn.00409792
mov ecx, dword [ebp + 4]
add esp, 4
cmp ecx, 0x5b
ja case.0x403fb2.15
xor edx, edx
mov dl, byte [ecx + 0x404cc4]
jmp dword [edx*4 + 0x404c84]
cmp eax, 7
jne 0x403f52
mov edx, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
xor eax, eax
lea edi, [edx + 0x34b]
repe cmpsw word [esi], word es:[edi]
jne 0x403f52
mov ecx, 0x14
lea edi, [esp + 0xf0]
mov dword [esp + 0x9c], 0x28
rep stosd dword es:[edi], eax
cmp dword [edx + 0x3dc60], ebx
jne 0x404017
lea ecx, [esp + 0x9c]
lea edx, [esp + 0xf0]
push ecx
push edx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
jmp 0x40402d
lea eax, [esp + 0x9c]
lea ecx, [esp + 0xf0]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov al, byte [esp + 0xf0]
test al, al
jne 0x40406f
mov ecx, 0x14
xor eax, eax
lea edi, [esp + 0xf0]
lea edx, [esp + 0xf0]
rep stosd dword es:[edi], eax
mov edi, str.Standalone
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0xa
lea edi, [esp + 0xf0]
lea esi, [esp + 0x66]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
jne 0x40446b
mov dword [esp + 0x94], ebx
jmp 0x403f52
cmp eax, 9
jne 0x403f52
mov ecx, 0x14
xor eax, eax
lea edi, [esp + 0xa0]
mov dword [esp + 0x10], 0x28
rep stosd dword es:[edi], eax
mov eax, dword [0x4542e8]
cmp dword [eax + 0x3dc60], ebx
jne 0x4040d8
lea ecx, [esp + 0x10]
lea edx, [esp + 0xa0]
push ecx
push edx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
jmp 0x4040eb
lea eax, [esp + 0x10]
lea ecx, [esp + 0xa0]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov al, byte [esp + 0xa0]
test al, al
jne 0x40412d
mov ecx, 0x14
xor eax, eax
lea edi, [esp + 0xa0]
lea edx, [esp + 0xa0]
rep stosd dword es:[edi], eax
mov edi, str.Standalone
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0xa
lea edi, [esp + 0xa0]
lea esi, [esp + 0x66]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
jne 0x4044df
mov dword [esp + 0x94], ebx
jmp 0x403f52
test eax, eax
jne 0x404192
mov eax, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
xor edx, edx
lea edi, [eax + 0x34b]
repe cmpsw word [esi], word es:[edi]
je 0x403f52
mov ecx, 5
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor eax, eax
repe cmpsw word [esi], word es:[edi]
je 0x40458c
jmp 0x403f52
cmp eax, 0x5b
je 0x404534
jmp 0x403f52
cmp eax, 0xb
je 0x404644
cmp eax, 0x4d
je 0x404644
cmp eax, ebx
jne 0x403f52
mov ecx, 3
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
jne 0x403f52
mov edx, dword [ebp + 0x15]
lea ecx, [ebp + 0x15]
lea eax, [esp + 0x22]
cmp edx, dword [eax]
je 0x4045e4
jmp 0x403f52
cmp eax, 0xc
je 0x404704
cmp eax, 0x4d
je 0x404704
cmp eax, 2
jne 0x403f52
mov ecx, 3
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
jne 0x403f52
mov eax, dword [ebp + 0x15]
lea edx, [ebp + 0x15]
lea ecx, [esp + 0x22]
cmp eax, dword [ecx]
je 0x4046a4
jmp 0x403f52
cmp eax, 0xc
je 0x4047c4
cmp eax, 0x4d
je 0x4047c4
cmp eax, 3
jne 0x403f52
mov ecx, eax
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
jne 0x403f52
mov edx, dword [ebp + 0x15]
lea ecx, [ebp + 0x15]
lea eax, [esp + 0x22]
cmp edx, dword [eax]
je 0x404764
jmp 0x403f52
cmp eax, 0xd
je 0x404884
cmp eax, 0x4d
je 0x404884
cmp eax, 4
jne 0x403f52
mov ecx, 3
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
jne 0x403f52
mov eax, dword [ebp + 0x15]
lea edx, [ebp + 0x15]
lea ecx, [esp + 0x22]
cmp eax, dword [ecx]
je 0x404824
jmp 0x403f52
cmp eax, 0xb
je 0x403f52
cmp eax, ebx
je 0x4048e4
cmp eax, 0x4d
je 0x4048e4
jmp 0x403f52
cmp eax, 0xc
je 0x403f52
cmp eax, 2
je 0x404944
cmp eax, 3
je 0x404944
cmp eax, 0x4d
je 0x404944
jmp 0x403f52
cmp eax, 0xd
je 0x403f52
cmp eax, 4
je 0x4049a4
cmp eax, 0x4d
je 0x4049a4
jmp 0x403f52
cmp eax, 0x15
je 0x404a04
cmp eax, 0x14
jne 0x403f52
mov ecx, 3
lea edi, [esp + 0x16]
lea esi, [ebp + 8]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
jne 0x403f52
mov edx, dword [ebp + 0x15]
lea ecx, [ebp + 0x15]
lea eax, [esp + 0x22]
cmp edx, dword [eax]
je 0x404a64
jmp 0x403f52
mov edx, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
lea edi, [edx + 0x34b]
xor edx, edx
repe cmpsw word [esi], word es:[edi]
je 0x403f52
cmp eax, 0x14
je 0x404ac4
cmp eax, 0x15
je 0x404ac4
jmp 0x403f52
mov edx, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
lea edi, [edx + 0x34b]
xor edx, edx
repe cmpsw word [esi], word es:[edi]
je 0x403f52
cmp eax, 0x16
je 0x404b24
jmp 0x403f52
mov edx, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
lea edi, [edx + 0x34b]
xor edx, edx
repe cmpsw word [esi], word es:[edi]
je 0x403f52
cmp eax, ebx
je 0x404b84
cmp eax, 2
je 0x404b84
cmp eax, 3
je 0x404b84
cmp eax, 4
je 0x404b84
cmp eax, 0xb
je 0x404b84
cmp eax, 0xc
je 0x404b84
cmp eax, 0xd
je 0x404b84
cmp eax, 0x4d
je 0x404b84
jmp 0x403f52
cmp eax, 0x5b
jne 0x40445d
mov eax, dword [0x4542e8]
mov ecx, 5
lea esi, [esp + 0x3e]
xor edx, edx
lea edi, [eax + 0x34b]
repe cmpsw word [esi], word es:[edi]
jne 0x404be1
jmp 0x403f52
cmp eax, 7
jne 0x404be1
jmp 0x403f52
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov dword [esp + 0x10], eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x10]
dec edi
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebp + 0x65]
mov ecx, 0xa
lea esi, [esp + 0x66]
rep movsd dword es:[edi], dword [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov dword [esp + 0x10], eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x10]
dec edi
jmp 0x4044be
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov dword [esp + 0x10], eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x10]
dec edi
jmp 0x4044be
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov dword [esp + 0x10], eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x10]
dec edi
jmp 0x4044be
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x404c43
mov eax, dword [esp + 0x2a]
mov ecx, dword [esp + 0x2e]
lea edx, [ebp + 0x28]
mov dword [ebp + 0x1f], eax
mov dword [ebp + 0x23], ecx
mov ecx, dword [esp + 0x32]
mov eax, edx
mov edi, 0x413834
mov dword [ebp + 0x94], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x36]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3a]
mov dword [eax + 8], ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov dword [esp + 0x10], eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x10]
dec edi
jmp 0x4044be
mov dword [ebp + 0x94], 0xffffffa8
movsx eax, word [esp + 0x98]
push eax
call fcn.004058f0
mov esi, dword [esp + 0x98]
add esp, 4
xor edi, edi
call fcn.00405430
cmp esi, ebx
jne 0x404c75
push ebp
call fcn.00404fb0
add esp, 4
mov dword [ebp + 0x94], edi
pop edi
pop esi
pop ebp
xor ax, ax
pop ebx
add esp, 0x1f8
ret