Function at 0x4102f0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x43c
mov esi, dword [0x45285c]
mov dword [esp + 0x3c], 0x33a53185
mov dword [esp + 0x40], 0x2fb72da6
mov dword [esp + 0x44], 0x2bbe29bc
mov dword [esp + 0x48], 0x27712585
mov dword [esp + 0x4c], 0x2374216d
mov dword [esp + 0x50], 0x1f7e1d4c
mov dword [esp + 0x54], 0x1bb51940
mov dword [esp + 0x58], 0x1780158d
mov dword [esp + 0x5c], 0x1385118c
mov dword [esp + 0x60], 0xf9d0d83
mov dword [esp + 0x64], 0xbbc0968
mov dword [esp + 0x68], 0x76605a8
mov dword [esp + 0x6c], 0x3520151
mov dword [esp + 0x70], 0x7f2e7d2a
mov dword [esp + 0x74], 0x7b1a7933
mov dword [esp + 0x78], 0x77ef75db
mov dword [esp + 0x7c], 0x733c71e6
mov dword [esp + 0x80], 0x6f256d20
mov dword [esp + 0x84], 0x6be26908
mov dword [esp + 0x88], 0x672a652a
mov dword [esp + 0x8c], 0x63026139
mov dword [esp + 0x90], 0x5fce5d1d
mov dword [esp + 0x94], 0x5bce59c8
mov dword [esp + 0x98], 0x57f955c9
mov dword [esp + 0x9c], 0x53f051cd
mov dword [esp + 0xa0], 0x4fd74df7
mov dword [esp + 0xa4], 0x4b1d49c4
mov dword [esp + 0xa8], 0x47154509
mov dword [esp + 0xac], 0x4314410f
mov dword [esp + 0xb0], 0xbff0bdef
mov dword [esp + 0xb4], 0xbbe2b9d8
mov dword [esp + 0xb8], 0xb70eb50f
mov dword [esp + 0xbc], 0xb307b11c
mov dword [esp + 0xc0], 0xaffaad18
mov dword [esp + 0xc4], 0xab3ea9c8
mov dword [esp + 0xc8], 0xa73da53d
mov dword [esp + 0xcc], 0xa3c2a13d
mov dword [esp + 0xd0], 0x9f039d23
mov dword [esp + 0xd4], 0x9b01993b
mov dword [esp + 0xd8], 0x97cf9503
mov dword [esp + 0xdc], 0x93d191f0
mov dword [esp + 0xe0], 0x8f1c8d14
mov dword [esp + 0xe4], 0x8b1f891f
mov dword [esp + 0xe8], 0x87d18519
mov dword [esp + 0xec], 0x83d381d1
mov dword [esp + 0xf0], 0xffa8fdb5
mov dword [esp + 0xf4], 0xfbacf9a8
mov dword [esp + 0xf8], 0xf7a0f5a4
mov dword [esp + 0xfc], 0xf392f1a0
mov dword [esp + 0x100], 0xef4fed5f
mov dword [esp + 0x104], 0xeb4be976
mov dword [esp + 0x108], 0xe77fe576
mov dword [esp + 0x10c], 0xe3afe1b7
mov dword [esp + 0x110], 0xdf91dd8f
mov dword [esp + 0x114], 0xdb89d98e
mov dword [esp + 0x118], 0xd7d6d59a
mov byte [esp + 0x11c], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xe0
ja 0x41057d
mov eax, dword [esp + 8]
movzx eax, byte [esp + eax + 0x3c]
push dword [esp + 8]
push eax
call fcn.00411af0
add esp, 8
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x3c], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0xe1
jb case.default.0x4105a5
mov ebx, dword [esp + 0x468]
mov edi, dword [esp + 0x464]
lea ebp, [esp + 0x3c]
push 0
push 0
push 0
push 0
push ebp
call esi
xor ecx, ecx
mov dword [esp + 0x38], eax
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44dc80]
xor esi, esi
mov eax, dword [case.0x4105a5.39]
xor ebp, ebp
jmp case.0x4105a5.36
mov edi, dword [esp + 0x450]
mov esi, dword [0x452860]
mov dword [esp + 8], 0x10604c1
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
cmp eax, 3
ja 0x41060b
mov eax, dword [esp + 0x3c]
movzx eax, byte [esp + eax + 8]
push dword [esp + 0x3c]
push eax
call fcn.00411b60
add esp, 8
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 8], al
inc dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
cmp eax, 4
jb case.default.0x41062d
movzx eax, word [esp + 8]
push 0
push eax
push edi
push dword [esp + 0x44]
call esi
mov edi, eax
xor eax, eax
test edi, edi
setne al
mov dword [esp + 4], 0
xor esi, esi
jmp dword [eax*4 + 0x44dc88]
jmp dword [0x44dc90]
mov ebx, dword [0x452864]
mov dword [esp + 8], 0x21a62724
mov dword [esp + 0xc], 0
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
cmp eax, 7
ja 0x41069b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x3c]
movzx eax, byte [esp + eax + 8]
push dword [esp + 0x3c]
push eax
call fcn.00411c40
add esp, 8
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 8], al
inc dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
cmp eax, 8
jb 0x410670
mov esi, dword [esp + 8]
mov dword [esp + 0x3c], 0x1570754
mov dword [esp + 0x40], 0xd5e035d
mov word [esp + 0x44], 0xf0c
mov dword [esp + 0x46], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xd
ja 0x4106f6
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x3c]
push dword [esp]
push eax
call fcn.00411bd0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x3c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xe
jb 0x4106d0
push esi
push 0
push 0
push 0
push dword [esp + 0x464]
push ebp
push edi
call ebx
jmp case.0x41062d.2
push esi
push 0
push 0
push 0
push dword [esp + 0x464]
push ebp
push edi
call ebx
jmp dword [0x44dc98]
mov ebx, dword [0x452864]
mov dword [esp + 8], 0x21a62724
mov dword [esp + 0xc], 0
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
cmp eax, 7
ja 0x41077b
nop
mov eax, dword [esp + 0x3c]
movzx eax, byte [esp + eax + 8]
push dword [esp + 0x3c]
push eax
call fcn.00411c40
add esp, 8
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 8], al
inc dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
cmp eax, 8
jb 0x410750
mov esi, dword [esp + 8]
mov dword [esp + 0x3c], 0x1570754
mov dword [esp + 0x40], 0xd5e035d
mov word [esp + 0x44], 0xf0c
mov dword [esp + 0x46], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xd
ja 0x410710
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x3c]
push dword [esp]
push eax
call fcn.00411bd0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x3c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xe
jb 0x4107c0
jmp 0x410710
mov ebx, eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp + 4], 0
xor esi, esi
jmp dword [eax*4 + 0x44dca0]
movzx eax, byte [0x452994]
jmp dword [eax*4 + 0x44dca8]
mov dword [esp + 8], 0x51ff4f09
mov dword [esp + 0xc], 0x55ff53e1
mov dword [esp + 0x10], 0x59f157ff
mov dword [esp + 0x14], 0x5d3a5b22
mov dword [esp + 0x18], 0xa1ff5ffd
mov dword [esp + 0x1c], 0xa504a305
mov dword [esp + 0x20], 0xa909a705
mov dword [esp + 0x24], 0xad0bab11
mov dword [esp + 0x28], 0xb115af0e
mov dword [esp + 0x2c], 0xb5cdb300
mov word [esp + 0x30], 0xb7b4
mov dword [esp + 0x32], 0
mov byte [esp + 0x36], 0
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
cmp eax, 0x2e
ja 0x4108bb
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x3c]
movzx eax, byte [esp + eax + 8]
push dword [esp + 0x3c]
push eax
call fcn.00411cd0
add esp, 8
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 8], al
inc dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
cmp eax, 0x2f
jb 0x410890
movzx eax, word [esp + 8]
test ax, ax
je 0x4108e2
lea ebp, [esp + 0x3c]
lea ecx, [esp + 0xa]
nop
nop
nop
mov word [ebp], ax
add ebp, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4108d0
mov word [ebp], 0
movzx eax, word [0x452996]
test ax, ax
je 0x410916
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebp + ecx], ax
movzx eax, word [ecx + 0x452998]
add ecx, 2
test ax, ax
jne 0x410900
add ebp, ecx
mov word [ebp], 0
lea eax, [esp + 0x3c]
push 0x20000000
push 0xffffffffffffffff
push eax
push ebx
call dword [0x452870]
xor ebp, ebp
mov ecx, dword [esp + 0x458]
mov eax, ecx
neg eax
mov eax, 0
sbb eax, eax
push 0
mov edx, dword [esp + 0x464]
push edx
push edx
push dword [esp + 0x468]
push eax
push ecx
push ebx
call dword [0x452874]
xor ecx, ecx
test eax, eax
setne cl
xor esi, esi
jmp dword [ecx*4 + 0x44dcb0]
push 0
push ebx
call dword [0x452878]
xor ecx, ecx
test eax, eax
setne cl
xor ebp, ebp
xor esi, esi
jmp dword [ecx*4 + 0x44dcb8]
mov dword [esp + 0x3c], 0
xor ebp, ebp
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esp + 0x3c]
push eax
push ebx
call dword [0x45287c]
test eax, eax
setne cl
mov eax, dword [esp + 0x3c]
test eax, eax
setne dl
and dl, cl
movzx ecx, dl
jmp dword [ecx*4 + 0x44dcc0]
add eax, ebp
inc eax
push eax
push esi
call fcn.00444380
add esp, 8
xor edx, edx
test eax, eax
sete dl
mov ecx, 1
jmp dword [edx*4 + 0x44dcc8]
mov esi, eax
mov dword [esp + 8], 0
add eax, ebp
lea ecx, [esp + 8]
push ecx
push dword [esp + 0x40]
push eax
push ebx
call dword [0x452880]
add ebp, dword [esp + 8]
mov eax, dword [case.0x4105a5.19]
nop
nop
nop
nop
xor ecx, ecx
jmp eax
jmp dword [ecx*4 + 0x44dce0]
jmp 0x4109a0
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44dce8]
mov byte [esi + ebp], 0
mov dword [esp + 4], ebp
jmp dword [0x44dcf0]
push ebx
call dword [0x452888]
push ebx
call dword [0x452888]
jmp dword [0x44dcfc]
mov ebx, dword [esp + 0x468]
jmp dword [0x44dd00]
push edi
call dword [0x452888]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call dword [0x452888]
jmp dword [0x44dd08]
push dword [esp + 0x38]
call dword [0x452888]
mov eax, dword [case.0x4105a5.39]
mov edi, dword [esp + 0x464]
mov ebp, dword [esp + 4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x44dd20]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44dd28]
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44dd30]
mov dword [edi], esi
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44dd30]
mov dword [ebx], ebp
test esi, esi
setne al
add esp, 0x43c
pop esi
pop edi
pop ebx
pop ebp
ret
push esi
call fcn.00441cd0
add esp, 4
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44dd30]
add eax, 0x5ba0041
inc ecx
add byte [ebp + 0xa], bh
inc ecx
add byte [esi + eax], dh
inc ecx
add byte [eax], ch
pop es
inc ecx
add byte [edx], bh
push es
inc ecx
add bl, ch
pop es
inc ecx
add byte [eax], ch
pop es
inc ecx
add byte [ebp + 0xa], cl
inc ecx
add byte [0x2f004108], al
or dword [ecx], eax
adc ecx, dword [eax]
inc ecx
add byte [edi], ch
or al, byte [ecx]
outsb dx, byte [esi]
or dword [ecx], eax
das
or al, byte [ecx]
mov dword [ecx], ecx
inc ecx
add byte [0xc600410a], bl
or dword [ecx], eax
out 9, al
inc ecx
add byte [edx + ecx], dl
inc ecx
add byte [eax], dl
or al, byte [ecx]
adc byte [edx], cl
inc ecx
add byte [edx + ecx], dl
inc ecx
add byte [eax], dl
or al, byte [ecx]
sbb ecx, dword [edx]
inc ecx
add byte [0x2f00410a], bl
or al, byte [ecx]
sub ecx, dword [edx]
inc ecx
add byte [eax + 0xa], al
inc ecx
add byte [ecx], bh
or al, byte [ecx]
inc eax
or al, byte [ecx]
dec ebp
or al, byte [ecx]
jo 0x44dd0c
inc ecx
add byte [edx + 0xa], bl
inc ecx
add byte [ebp + 0xa], bh
inc ecx
add byte [eax + 0xa], dh
jo 0x44dd18
inc ecx
add byte [eax - 0x5fffbef6], ah
or al, byte [ecx]
mov al, byte [0xa200410a]
or al, byte [ecx]
mov al, 0xa
inc ecx
add ah, cl
or al, byte [ecx]
mov esi, 0xee00410a
or al, byte [ecx]
fimul word [edx]
inc ecx
add ah, bl
or al, byte [ecx]
mov esp, 0xc300410d
or eax, 230883393
inc ecx
add byte [ecx], bh
push cs