Function at 0x10001069
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jmp 0x10004aa0
mov eax, 0x158
call fcn.10001398
mov eax, dword [0x1007c4d4]
xor eax, esp
mov dword [esp + 0x154], eax
mov eax, dword [esp + 0x160]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x168]
push edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x28], 0
cmp dword [esi + 0x18], 0
jne 0x10004ae5
push esi
call sym.libssl_1_1.dll_SSL_set_accept_state
add esp, 4
push esi
call sym.libssl_1_1.dll_SSL_clear
add esp, 4
test eax, eax
je 0x10005427
call sub.libcrypto_1_1.dll_ERR_clear_error
push esi
call sym.libssl_1_1.dll_SSL_get_rbio
mov edi, eax
push esi
mov dword [esp + 0x1c], edi
call sym.libssl_1_1.dll_SSL_get_wbio
add esp, 8
mov ebp, eax
mov dword [esp + 0x1c], ebp
test edi, edi
je 0x10005409
test ebp, ebp
je 0x10005409
mov eax, dword [esi]
and eax, 0xff00
cmp eax, 0xfe00
je 0x10004b48
push 0x1e6
push str.ssld1_lib.c
push 0x103
jmp 0x10005418
push esi
call fcn.10001492
add esp, 4
test eax, eax
je 0x10005427
mov ebx, dword [esi + 0x664]
mov ecx, 7
mov eax, dword [esi + 0x678]
mov dword [esp + 0x48], eax
push 0
lea eax, [ebx - 4]
and eax, 7
sub ecx, eax
add ebx, ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x28], ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x400d
push ebx
push edi
call sub.libcrypto_1_1.dll_BIO_read
mov edi, eax
add esp, 0xc
test edi, edi
jle 0x100050a6
cmp edi, 0x7fffffff
ja 0x100053fb
cmp edi, 0xd
jb 0x100053cd
mov eax, dword [esi + 0x84]
test eax, eax
je 0x10004bd8
push dword [esi + 0x88]
push esi
push 0xd
push ebx
push 0x100
push 0
push 0
call eax
add esp, 0x1c
mov dl, byte [ebx]
lea ecx, [edi - 1]
test ecx, ecx
je 0x100053bc
mov al, byte [ebx + 1]
dec ecx
cmp dl, 0x16
jne 0x1000538e
cmp al, 0xfe
jne 0x10005360
cmp ecx, 1
jb 0x1000532f
dec ecx
lea edi, [ebx + 3]
cmp ecx, 8
jb 0x1000532f
mov eax, dword [edi + 4]
sub ecx, 8
mov edx, dword [edi]
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
cmp ecx, 2
jb 0x1000532f
movzx ebx, byte [edi + 8]
movzx eax, byte [edi + 9]
add edi, 0xa
shl ebx, 8
or ebx, eax
lea eax, [ecx - 2]
mov dword [esp + 0x54], ebx
cmp eax, ebx
jb 0x1000532f
test dl, dl
jne 0x10005328
shr edx, 8
test dl, dl
jne 0x10005328
test ebx, ebx
je 0x100052f7
mov al, byte [edi]
lea ecx, [ebx - 1]
mov byte [esp + 0x13], al
cmp ecx, 3
jb 0x100052f7
movzx eax, byte [edi + 1]
sub ecx, 3
movzx edx, byte [edi + 2]
shl eax, 8
or edx, eax
movzx eax, byte [edi + 3]
shl edx, 8
or edx, eax
cmp ecx, 2
jb 0x100052f7
movzx eax, byte [edi + 4]
sub ecx, 2
movzx ebx, byte [edi + 5]
shl eax, 8
or ebx, eax
mov dword [esp + 0x44], ebx
cmp ecx, 3
jb 0x100052f7
movzx eax, byte [edi + 6]
sub ecx, 3
movzx ebp, byte [edi + 7]
shl eax, 8
or ebp, eax
movzx eax, byte [edi + 8]
shl ebp, 8
or ebp, eax
cmp ecx, 3
jb 0x100052f7
movzx eax, byte [edi + 9]
sub ecx, 3
movzx ebx, byte [edi + 0xa]
shl eax, 8
or ebx, eax
movzx eax, byte [edi + 0xb]
shl ebx, 8
or ebx, eax
cmp ecx, ebx
jb 0x100052f7
sub ecx, ebx
jne 0x100052f7
cmp byte [esp + 0x13], 1
jne 0x100052ed
cmp dword [esp + 0x44], 2
ja 0x100052bc
test ebp, ebp
jne 0x1000528b
cmp ebx, edx
ja 0x1000528b
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x10004d49
push dword [esi + 0x88]
lea eax, [ebx + 0xc]
push esi
push eax
push edi
push 0x16
push dword [esi]
push ebp
call ecx
add esp, 0x1c
cmp ebx, 2
jb 0x1000525a
movzx ecx, byte [edi + 0xc]
add ebx, 0xfffffffe
movzx eax, byte [edi + 0xd]
mov ebp, 0xff00
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 4]
mov edx, dword [eax]
cmp edx, 0x100
mov eax, edx
cmove eax, ebp
cmp ecx, 0x100
cmove ecx, ebp
cmp ecx, eax
jbe 0x10004d90
cmp edx, 0x1ffff
jne 0x100050cf
cmp ebx, 0x20
jb 0x10005229
sub ebx, 0x20
je 0x10005229
movzx ecx, byte [edi + 0x2e]
lea eax, [ebx - 1]
add edi, 0x2f
cmp eax, ecx
jb 0x10005229
add edi, ecx
sub eax, ecx
je 0x10005229
movzx ecx, byte [edi]
dec eax
inc edi
cmp eax, ecx
jb 0x10005229
test ecx, ecx
jne 0x10004dd4
lea eax, [ecx + 1]
jmp 0x10004df7
mov eax, dword [esi + 0x4d0]
mov eax, dword [eax + 0x80]
test eax, eax
je 0x10005215
push ecx
push edi
push esi
call eax
add esp, 0xc
neg eax
sbb eax, eax
neg eax
inc eax
cmp eax, 1
jne 0x10005075
mov eax, dword [esi + 0x4d0]
mov eax, dword [eax + 0x7c]
test eax, eax
je 0x10005158
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x68]
push ecx
push esi
call eax
add esp, 0xc
test eax, eax
je 0x10005158
cmp dword [esp + 0x18], 0xff
ja 0x10005158
mov eax, dword [esi + 4]
mov edi, 0xfeff
cmp dword [eax], 0x1ffff
je 0x10004e49
mov edi, dword [esi]
push 0
push esi
call fcn.10001fc8
mov ebp, dword [esp + 0x50]
add esp, 4
add eax, 0xd
push eax
lea eax, [esp + 0x34]
push ebp
push eax
call fcn.10001b27
add esp, 0x10
test eax, eax
je 0x1000512e
push 1
lea eax, [esp + 0x30]
push 0x16
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
push 2
lea eax, [esp + 0x30]
push edi
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
push 8
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.10001d48
add esp, 0xc
test eax, eax
je 0x1000512e
lea eax, [esp + 0x2c]
push 2
push eax
call fcn.10001aaf
add esp, 8
test eax, eax
je 0x1000512e
push 1
lea eax, [esp + 0x30]
push 3
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
push 3
lea eax, [esp + 0x30]
push 0
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
push 2
lea eax, [esp + 0x30]
push 0
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
push 3
lea eax, [esp + 0x30]
push 0
push eax
call fcn.100016d1
add esp, 0xc
test eax, eax
je 0x1000512e
lea eax, [esp + 0x2c]
push 3
push eax
call fcn.10001aaf
add esp, 8
test eax, eax
je 0x1000512e
push dword [esp + 0x18]
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.10002180
add esp, 0xc
test eax, eax
je 0x1000512e
lea eax, [esp + 0x2c]
push eax
call fcn.10002581
add esp, 4
test eax, eax
je 0x1000512e
lea eax, [esp + 0x2c]
push eax
call fcn.10002581
add esp, 4
test eax, eax
inc esp
or byte [eax], bl
jbe 0x1000509d
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x10005084
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
cmp dword [esp + 0xc], edx
jb 0x10005095
add edx, ecx
cmp dword [esp + 0xc], edx
jb 0x1000509f
inc edi
add eax, 0x28
cmp edi, esi
jb 0x1000507a
xor eax, eax
pop edi
pop esi
ret
push dword [esp + 8]
call fcn.10005062
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
jne 0x100050b8
ret
mov eax, dword [ecx + 0x14]
sub eax, dword [ecx + 0xc]
add eax, dword [esp + 4]
add eax, dword [esp + 0xc]
ret
push edi
call fcn.10005000
ret
invalid
invalid
fstp xword [ebx]
ret
cmp byte [eax], bl
mov dword [ebp - 0x44], esi
call fcn.10005022
cmp dword [esi - 0x48f0cc0d], eax
inc edi
push es
lea eax, [eax + eax*4]
shl eax, 3
sub eax, dword [ebp + 0x10]
add eax, esi
mov dword [ebp - 0xb4], eax
mov dword [ebp - 8], eax
call fcn.10005022
or dword [ebx + edi*4 + 0x478b6643], edx
inc edi
push es
cmp ax, bx
jbe 0x1000527c
lea ecx, [esi + 0xc]
movzx edx, ax
mov eax, dword [ecx + 4]
mov esi, dword [ecx]
add eax, esi
cmp dword [ebp - 8], eax
jae 0x10005276
mov dword [ebp - 8], eax
add ecx, 0x28
dec edx
jne 0x10005267
mov byte [ebp - 0x58], bl
mov byte [ebp - 0x57], bl
mov byte [ebp - 0x56], 0x58
mov byte [ebp - 0x55], bl
mov byte [ebp - 0x54], 0xe0
mov byte [ebp - 0x53], 0xc2
mov byte [ebp - 0x52], 0xd3
mov byte [ebp - 0x51], 0xf4
mov byte [ebp - 0x50], 0xde
mov byte [ebp - 0x4f], 0xd4
mov byte [ebp - 0x4e], 0xd3
mov byte [ebp - 0x4d], 0xc2
mov byte [ebp - 0x4c], 0xca
mov byte [ebp - 0x4b], 0xee
mov byte [ebp - 0x4a], 0xc9
mov byte [ebp - 0x49], 0xc1
mov byte [ebp - 0x48], 0xc8
mov byte [ebp - 0x47], 0xa7
lodsb al, byte [esi]
loopne 0x10005254
inc ebp
lodsd eax, dword [esi]
ret 0x45c6
enter 0x45c6, 0xffffffffffffffb9
cmpsd dword [esi], dword es:[edi]
call fcn.10005022
jmp 0x9da61fb2
inc ebp
clc
mov ecx, dword [ebp - 0xac]
xor edx, edx
div ecx
xor edx, edx
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 8]
div ecx
test edx, edx
je 0x10005310
inc dword [ebp - 0x8c]
imul ecx, dword [ebp - 0x8c]
mov dword [ebp + 0xc], ecx
mov byte [ebp - 0x40], bl
mov byte [ebp - 0x3f], bl
mov byte [ebp - 0x3e], 0xec
mov byte [ebp - 0x3d], bl
mov byte [ebp - 0x3c], 0x45
mov byte [ebp - 0x3b], 0x7a
inc ebp
les eax, [ebp - 0x3a]
inc ebp
lds edi, [edx - 0x3a]
inc ebp
invalid
mov byte [ebp - 0x3a], 0x61
mov byte [ebp - 0x39], 0x67
mov byte [ebp - 0x38], 0x66
mov byte [ebp - 0x37], 0x72
mov byte [ebp - 0x36], 0x7f
mov byte [ebp - 0x35], 0x52
mov byte [ebp - 0x34], 0x7f
mov byte [ebp - 0x33], 0x7f
mov byte [ebp - 0x32], 0x7c
mov byte [ebp - 0x31], 0x70
mov byte [ebp - 0x30], 0x13
call fcn.10005022
out dx, eax
xchg ebx, eax
sar dword [0x50c0458d], 0xe8
invalid
call 0xf95ddbe3
mov byte [ebp - 0x16], 0x40
mov byte [ebp - 0x15], bl
mov byte [ebp - 0x14], 0xe9
mov byte [ebp - 0x13], 0xd6
mov byte [ebp - 0x12], 0xcd
mov byte [ebp - 0x11], 0xcb
mov byte [ebp - 0x10], 0xca
mov byte [ebp - 0xf], 0xde
mov byte [ebp - 0xe], 0xd3
mov byte [ebp - 0xd], 0xf9
mov byte [ebp - 0xc], 0xcd
mov byte [ebp - 0xb], 0xda
mov byte [ebp - 0xa], 0xda
mov byte [ebp - 9], 0xbf
call fcn.10005032
push eax
push esi
push dword [ebp + 8]
call fcn.10004fe7
mov dword [ebp - 8], eax
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 0x6c], bl
mov byte [ebp - 0x6b], bl
mov byte [ebp - 0x6a], 0xbe
mov byte [ebp - 0x69], bl
mov byte [ebp - 0x68], 0x17
mov byte [ebp - 0x67], 0x28
mov byte [ebp - 0x66], 0x33
mov byte [ebp - 0x65], 0x35
mov byte [ebp - 0x64], 0x34
hlt
invalid
wait
xor eax, 0x349c45c6
mov byte [ebp - 0x63], 0x20
mov byte [ebp - 0x62], 0x2d
mov byte [ebp - 0x61], 0x11
mov byte [ebp - 0x60], 0x33
mov byte [ebp - 0x5f], 0x2e
mov byte [ebp - 0x5e], 0x35
mov byte [ebp - 0x5d], 0x24
xor eax, 0x24a345c6
mov byte [ebp - 0x5c], 0x22
mov byte [ebp - 0x5b], 0x35
mov byte [ebp - 0x5a], 0x41
cmpsb byte [esi], byte es:[edi]
inc ecx
call fcn.10005032
push eax
push esi
push dword [ebp + 8]
call fcn.10004fe7
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x2c], bl
push eax
mov byte [ebp - 0x2b], bl
mov byte [ebp - 0x2a], 0xd4
mov byte [ebp - 0x29], bl
mov byte [ebp - 0x28], 0x67
mov byte [ebp - 0x27], 0x44
mov byte [ebp - 0x26], 0x4a
mov byte [ebp - 0x25], 0x4f
mov byte [ebp - 0x24], 0x67
mov byte [ebp - 0x23], 0x42
mov byte [ebp - 0x22], 0x49
mov byte [ebp - 0x21], 0x59
mov byte [ebp - 0x20], 0x4a
mov byte [ebp - 0x1f], 0x59
mov byte [ebp - 0x1e], 0x52
mov byte [ebp - 0x1d], 0x6a
mov byte [ebp - 0x1c], 0x2b
call fcn.10005032
push eax
push esi
push dword [ebp + 8]
call fcn.10004fe7
add esp, 0x30
mov dword [ebp - 0xb8], eax
call fcn.10005022
mov ah, 0x69
or eax, 0x7c9d88e6
invalid