Function at 0x41c830
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
xor eax, eax
mov ecx, 0x132
mov edx, 0x5417
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x4d4]
lea esi, [ebp - 0x514]
push ebx
mov ebx, 0x5417
sub esp, 0x534
rep stosd dword es:[edi], eax
mov eax, 0x5417
mov word [ebp - 0x448], dx
mov ecx, 0x5417
mov dword [ebp - 0x4b0], esi
mov edi, 0x5417
mov edx, 0x5417
mov word [ebp - 0x4d0], ax
mov eax, 0x5417
mov word [ebp - 0x48c], ax
mov eax, 0x5417
mov dword [ebp - 0x4d4], 0x597d4f60
mov dword [ebp - 0x4b4], 0xffffffff
mov dword [ebp - 0x4ac], 0xf
mov dword [ebp - 0x4a8], 0x4232542b
mov dword [ebp - 0x4a4], 0x5156665a
mov dword [ebp - 0x4a0], 0x2d58
mov dword [ebp - 0x498], 0xb
mov dword [ebp - 0x494], 0xb
mov dword [ebp - 0x490], 0x597d4f60
mov dword [ebp - 0x470], 0xfffffffe
mov dword [ebp - 0x46c], esi
mov dword [ebp - 0x468], 0xf
mov dword [ebp - 0x464], 0x4232542b
mov dword [ebp - 0x460], 0x5156665a
mov dword [ebp - 0x45c], 0x2d58
mov dword [ebp - 0x454], 0xb
mov dword [ebp - 0x450], 0xb
mov dword [ebp - 0x44c], 0x597d4f60
mov dword [ebp - 0x42c], 0xffffffff
mov dword [ebp - 0x428], esi
mov dword [ebp - 0x424], 0xa
mov dword [ebp - 0x420], 0x4232542b
mov dword [ebp - 0x41c], 0x5156665a
mov word [ebp - 0x338], ax
mov eax, 0x6f
mov word [ebp - 0x404], cx
mov ecx, 0x4f60
mov word [ebp - 0x3c0], bx
mov ebx, 0x2b
mov dword [ebp - 0x418], 0x2d58
mov dword [ebp - 0x410], 0xa
mov dword [ebp - 0x408], 0x597d4f60
mov dword [ebp - 0x3e8], 0xffffffff
mov dword [ebp - 0x3e4], esi
mov dword [ebp - 0x3e0], 0xb
mov dword [ebp - 0x3dc], 0x4232542b
mov dword [ebp - 0x3d8], 0x5156665a
mov dword [ebp - 0x3d4], 0x2d58
mov dword [ebp - 0x3cc], 0xb
mov dword [ebp - 0x3c8], 0xb
mov dword [ebp - 0x3c4], 0x597d4f60
mov dword [ebp - 0x3a4], 0xffffffff
mov dword [ebp - 0x3a0], esi
mov dword [ebp - 0x39c], 0xc
mov dword [ebp - 0x398], 0x4232542b
mov dword [ebp - 0x394], 0x5156665a
mov dword [ebp - 0x390], 0x2d58
mov dword [ebp - 0x388], 0xb
mov dword [ebp - 0x384], 0xb
mov dword [ebp - 0x380], 0x597d4f60
mov word [ebp - 0x37c], di
mov dword [ebp - 0x360], 0xffffffff
mov dword [ebp - 0x340], 0xb
mov dword [ebp - 0x33c], 0x597d4f60
mov dword [ebp - 0x31c], 0xffffffff
mov dword [ebp - 0x318], esi
mov dword [ebp - 0x2fc], 0xb
mov dword [ebp - 0x2f8], 0x650068
mov dword [ebp - 0x2f4], 0x6c006c
mov word [ebp - 0x2f0], ax
mov eax, 0x5417
mov word [ebp - 0x2b0], ax
mov eax, 0x6f
mov word [ebp - 0x224], ax
mov eax, 0x4f60
mov dword [ebp - 0x2d8], 2
mov dword [ebp - 0x2d4], esi
mov dword [ebp - 0x2d0], 0xf
mov dword [ebp - 0x2cc], 0x6568
mov dword [ebp - 0x2bc], 2
mov dword [ebp - 0x2b8], 2
mov dword [ebp - 0x2b4], 0x597d4f60
mov dword [ebp - 0x294], 2
mov dword [ebp - 0x290], esi
mov dword [ebp - 0x28c], 0xf
mov dword [ebp - 0x288], 0x4232542b
mov dword [ebp - 0x284], 0x2d51665a
mov dword [ebp - 0x278], 8
mov dword [ebp - 0x274], 8
mov dword [ebp - 0x250], 0xffffffff
mov dword [ebp - 0x24c], esi
mov dword [ebp - 0x248], 0xf
mov dword [ebp - 0x234], 1
mov dword [ebp - 0x230], 1
mov dword [ebp - 0x22c], 0x650068
mov dword [ebp - 0x228], 0x6c006c
mov dword [ebp - 0x20c], 0xffffffff
mov dword [ebp - 0x208], esi
mov dword [ebp - 0x204], 2
mov dword [ebp - 0x200], 0x6568
mov dword [ebp - 0x1f0], 2
mov dword [ebp - 0x1e8], 0x14f60
mov dword [ebp - 0x1c8], 0xffffffff
mov dword [ebp - 0x1c4], esi
mov dword [ebp - 0x1c0], 2
mov dword [ebp - 0x1bc], 0x542b
mov dword [ebp - 0x1ac], 2
mov dword [ebp - 0x1a4], 0x14f60
mov dword [ebp - 0x184], 0xffffffff
mov dword [ebp - 0x180], esi
mov dword [ebp - 0x17c], 3
mov dword [ebp - 0x178], 0x32542b
mov dword [ebp - 0x168], 3
mov dword [ebp - 0x160], 0x14f60
mov dword [ebp - 0x140], 0xffffffff
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0x138], 4
mov dword [ebp - 0x134], 0x4132542b
mov dword [ebp - 0x124], 4
mov word [ebp - 0x11c], ax
mov dword [ebp - 0xfc], 0xffffffff
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xf4], 1
mov dword [ebp - 0xf0], 0x2b
mov dword [ebp - 0xe0], 1
mov dword [ebp - 0xd8], 0x597d4f60
mov word [ebp - 0xd4], dx
mov dword [ebp - 0xb8], 0xffffffff
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0xb0], 9
mov dword [ebp - 0xac], 0x4232542b
mov dword [ebp - 0xa8], 0x5156665a
mov dword [ebp - 0xa4], 0x58
mov dword [ebp - 0x9c], 9
mov word [ebp - 0x94], cx
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x6c], 4
mov word [ebp - 0x50], bx
xor ebx, ebx
mov dword [ebp - 0x68], 0x32542b
mov dword [ebp - 0x58], 3
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x24], 0x2b
mov dword [ebp - 0x14], 1
jmp 0x41ce9c
cmp ebx, 0x7f
jle 0x41d394
lea eax, [ebx*4]
mov dword [esp + 4], str.__c_c_c_
mov edi, 8
and eax, 0x3c
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 0x10], eax
mov eax, ebx
sar eax, 4
and eax, 0x3f
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 0xc], eax
mov eax, ebx
sar eax, 0xa
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 8], eax
lea eax, [ebp - 0x504]
mov dword [esp], eax
call fcn.0041a9f0
mov dword [ebp - 0x51c], 8
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2a0
mov eax, dword [ebp - 0x518]
mov dword [esp + 8], ebx
cmp edi, eax
mov dword [esp + 0x10], eax
sete al
mov dword [esp + 0xc], edi
movzx eax, al
mov dword [esp + 4], str.i0x_04x:_expected_len_i__got_len_i_n
mov dword [esp], eax
call fcn.0041ae70
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2a1
mov eax, dword [ebp - 0x51c]
mov dword [esp], esi
mov dword [esp + 8], eax
lea eax, [ebp - 0x504]
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcmp
lea edx, [ebp - 0x504]
mov dword [esp + 8], ebx
test eax, eax
mov dword [esp + 0xc], edx
sete al
mov dword [esp + 0x10], esi
movzx eax, al
mov dword [esp + 4], str.i0x_04x:_expected_output_s__got_output_s_n
mov dword [esp], eax
call fcn.0041ae70
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2a3
movsx ecx, byte [ebp + edi - 0x514]
mov dword [esp + 8], ebx
cmp cl, 0x23
mov dword [esp + 0x14], ecx
sete al
mov dword [esp + 0x10], edi
add ebx, 1
movzx eax, al
mov dword [esp + 0xc], edi
mov dword [esp + 4], str.i0x_04x:_expected_output__i___got_output__i__i_n
mov dword [esp], eax
call fcn.0041ae70
cmp ebx, 0x10000
je 0x41cf55
mov eax, 0x20
mov dword [esi + 8], 0x23232323
mov word [ebp - 0x4f4], ax
lea eax, [ebp - 0x4f4]
mov dword [esi + 4], 0x23232323
mov dword [esi + 0xb], 0x23232323
mov word [ebp - 0x4f2], bx
mov dword [ebp - 0x4f0], 0x20
mov dword [esi], 0x23232323
mov byte [ebp - 0x505], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0xf
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0xfde8
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov dword [ebp - 0x518], eax
sub esp, 0x20
cmp ebx, 0x2b
jne 0x41cd50
mov dword [ebp - 0x504], 0x202d2b20
mov edi, 5
mov byte [ebp - 0x500], 0
mov dword [ebp - 0x51c], 5
jmp 0x41cdb6
xor edi, edi
jmp 0x41d0c3
cmp edi, 0x7f
jle 0x41d3d1
mov eax, edi
mov dword [esp + 4], str.Jn_c_c_c_cZy_
mov ebx, 0xb
shl eax, 4
and eax, 0x30
or eax, 2
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 0x14], eax
mov eax, edi
sar eax, 2
and eax, 0x3f
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 0x10], eax
mov eax, edi
sar eax, 8
and eax, 0x3f
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 0xc], eax
mov eax, edi
sar eax, 0xe
or eax, 8
movsx eax, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
mov dword [esp + 8], eax
lea eax, [ebp - 0x504]
mov dword [esp], eax
call fcn.0041a9f0
mov dword [ebp - 0x51c], 0xb
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2cc
mov eax, dword [ebp - 0x518]
mov dword [esp + 8], edi
cmp ebx, eax
mov dword [esp + 0x10], eax
sete al
mov dword [esp + 0xc], ebx
movzx eax, al
mov dword [esp + 4], str.i0x_04x:_expected_len_i__got_len_i_n
mov dword [esp], eax
call fcn.0041ae70
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2cd
mov eax, dword [ebp - 0x51c]
mov dword [esp], esi
mov dword [esp + 8], eax
lea eax, [ebp - 0x504]
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcmp
lea edx, [ebp - 0x504]
mov dword [esp + 8], edi
test eax, eax
mov dword [esp + 0xc], edx
sete al
mov dword [esp + 0x10], esi
movzx eax, al
mov dword [esp + 4], str.i0x_04x:_expected_output_s__got_output_s_n
mov dword [esp], eax
call fcn.0041ae70
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2cf
movsx ecx, byte [ebp + ebx - 0x514]
mov dword [esp + 8], edi
cmp cl, 0x23
mov dword [esp + 0x14], ecx
sete al
mov dword [esp + 0x10], ebx
add edi, 1
movzx eax, al
mov dword [esp + 0xc], ebx
mov dword [esp + 4], str.i0x_04x:_expected_output__i___got_output__i__i_n
mov dword [esp], eax
call fcn.0041ae70
cmp edi, 0x10000
je 0x41d190
mov eax, 0x2672
mov dword [esi + 8], 0x23232323
mov word [ebp - 0x4f4], ax
lea eax, [ebp - 0x4f4]
mov dword [esi + 4], 0x23232323
mov dword [esi + 0xb], 0x23232323
mov word [ebp - 0x4f2], di
mov dword [ebp - 0x4f0], 0x2672
mov dword [esi], 0x23232323
mov byte [ebp - 0x505], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0xf
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0xfde8
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov dword [ebp - 0x518], eax
sub esp, 0x20
cmp edi, 0x2b
jne 0x41cf60
mov dword [ebp - 0x504], 0x496e4a2b
mov ebx, 0xd
mov dword [ebp - 0x500], 0x2b2d2b2d
mov dword [ebp - 0x4fc], 0x2d496e4a
mov byte [ebp - 0x4f8], 0
mov dword [ebp - 0x51c], 0xd
jmp 0x41cfdd
mov eax, dword fs:[0x18]
lea ebx, [ebp - 0x4d4]
mov dword [ebp - 0x51c], eax
xor edi, edi
jmp 0x41d2ba
mov dword [ebp - 0x518], edx
call fcn.0057d110
mov edx, dword [ebp - 0x518]
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2e2
mov eax, dword [ebx + 0x40]
mov dword [esp + 0x10], edx
cmp eax, edx
mov dword [esp + 0xc], eax
sete al
mov dword [esp + 8], edi
movzx eax, al
mov dword [esp + 4], str.tests__i_:_expected_len_i__got_len_i_n
mov dword [esp], eax
call fcn.0041ae70
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x41d2ab
call fcn.0057d110
lea edx, [ebx + 0x2c]
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2e6
mov ecx, dword [ebx + 0x24]
mov eax, dword [ebx + 0x3c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [ebp - 0x520], edx
mov dword [esp], ecx
mov dword [ebp - 0x518], ecx
call sub.msvcrt.dll_memcmp
mov ecx, dword [ebp - 0x518]
test eax, eax
sete al
mov dword [esp + 0x10], ecx
mov edx, dword [ebp - 0x520]
movzx eax, al
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp], eax
mov dword [esp + 4], str.tests__i_:_expected_dst_s__got_dst_s_n
call fcn.0041ae70
call fcn.0057d110
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2e9
mov eax, dword [ebx + 0x3c]
mov edx, dword [ebx + 0x24]
movsx ecx, byte [edx + eax]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], eax
xor eax, eax
cmp cl, 0x23
mov dword [esp + 0x14], ecx
sete al
mov dword [esp + 8], edi
mov dword [esp + 4], str.tests__i_:_expected_dst__i___got_dst__i__i_n
mov dword [esp], eax
call fcn.0041ae70
add edi, 1
add ebx, 0x44
cmp edi, 0x12
je 0x41d38c
mov eax, dword [ebp - 0x51c]
mov dword [esi + 8], 0x23232323
mov dword [esi + 4], 0x23232323
mov dword [eax + 0x34], 0xdeadbeef
mov dword [esi + 0xb], 0x23232323
mov dword [esi], 0x23232323
mov byte [ebp - 0x505], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x20]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0
mov dword [esp], 0xfde8
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov ecx, dword [ebx + 0x40]
sub esp, 0x20
mov edx, eax
test ecx, ecx
jne 0x41d1b0
mov dword [ebp - 0x518], eax
call fcn.0057d110
mov ecx, dword [ebp - 0x51c]
mov dword [eax], 0x58a4b3
mov dword [eax + 4], 0x2de
mov eax, dword [ecx + 0x34]
mov dword [esp + 0xc], 0x7a
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 8], edi
mov dword [esp + 4], str.tests__i_:_expected_error0x_x__got_error0x_lx_n
cmp dword [ecx + 0x34], 0x7a
sete al
mov dword [esp], eax
call fcn.0041ae70
mov edx, dword [ebp - 0x518]
jmp 0x41d1b0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebx*4 + 0x58b080]
test eax, eax
je 0x41cd59
lea eax, [ebp - 0x504]
mov dword [esp + 8], ebx
mov edi, 4
mov dword [esp + 4], str.__c
mov dword [esp], eax
call fcn.0041a9f0
mov dword [ebp - 0x51c], 4
jmp 0x41cdb6
mov ebx, dword [edi*4 + 0x58b080]
test ebx, ebx
je 0x41cf69
lea eax, [ebp - 0x504]
mov dword [esp + 8], edi
mov ebx, 0xc
mov dword [esp + 4], str.JnI__cJnI_
mov dword [esp], eax
call fcn.0041a9f0
mov dword [ebp - 0x51c], 0xc
jmp 0x41cfdd