Function at 0x4d6150
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
xor ecx, ecx
mov ebp, esp
push edi
xor edi, edi
push esi
xor esi, esi
push ebx
xor ebx, ebx
sub esp, 0x88
mov dword [ebp - 0x64], 0x650074
mov dword [ebp - 0x60], 0x740073
mov word [ebp - 0x5c], cx
mov dword [ebp - 0x58], 0x650054
mov dword [ebp - 0x54], 0x740053
mov word [ebp - 0x50], bx
mov dword [ebp - 0x40], 0x650074
mov dword [ebp - 0x3c], 0x740073
mov dword [ebp - 0x38], 0x33
mov dword [ebp - 0x74], 0x61
mov dword [ebp - 0x70], 0x61
mov dword [ebp - 0x6c], 0x61
mov dword [ebp - 0x68], 0x62
mov dword [ebp - 0x1c], 0x690062
mov dword [ebp - 0x18], 0x6c006c
mov dword [ebp - 0x14], 0x730027
mov word [ebp - 0x10], si
mov dword [ebp - 0x34], 0x690062
mov dword [ebp - 0x30], 0x6c006c
mov dword [ebp - 0x2c], 0x73
mov dword [ebp - 0x28], 0x6f0063
mov dword [ebp - 0x24], 0x6f002d
mov dword [ebp - 0x20], 0x70
mov dword [ebp - 0x4c], 0x6f0063
mov dword [ebp - 0x48], 0x70006f
mov word [ebp - 0x44], di
mov dword [ebp - 0x7c], 0x102
mov dword [ebp - 0x78], 0x201
mov eax, dword [0x7af704]
test eax, eax
je 0x4d6ad1
mov esi, dword fs:[0x18]
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call eax
sub esp, 0x14
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17c4
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 8], ebx
lea ebx, [ebp - 0x64]
mov dword [esp], eax
mov dword [esp + 4], str.Got__u__expected_0_n
call fcn.004b46e0
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17c5
mov dword [esp + 0xc], 0x57
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.Got__lx__expected__x_n
mov dword [esp + 8], eax
xor eax, eax
cmp dword [esi + 0x34], 0x57
sete al
mov dword [esp], eax
call fcn.004b46e0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17c8
xor eax, eax
test edi, edi
sete al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.Got__u__expected_0_n
call fcn.004b46e0
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17c9
mov dword [esp + 0xc], 0x57
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.Got__lx__expected__x_n
mov dword [esp + 8], eax
xor eax, eax
cmp dword [esi + 0x34], 0x57
sete al
mov dword [esp], eax
call fcn.004b46e0
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 8], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17cc
xor eax, eax
test edi, edi
sete al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.Got__u__expected_0_n
call fcn.004b46e0
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17cd
mov dword [esp + 0xc], 0x57
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.Got__lx__expected__x_n
mov dword [esp + 8], eax
xor eax, eax
cmp dword [esi + 0x34], 0x57
sete al
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], ebx
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17d1
xor eax, eax
cmp esi, 2
sete al
mov dword [esp + 8], esi
lea esi, [ebp - 0x58]
mov dword [esp + 0xc], 2
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], esi
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17d3
xor eax, eax
cmp edi, 3
sete al
mov dword [esp + 8], edi
mov dword [esp + 0xc], 3
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], ebx
mov dword [esp], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
mov eax, 0x17d5
call fcn.004b3be0
xor eax, eax
cmp edi, 1
mov dword [esp + 8], edi
sete al
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], esi
mov dword [esp], ebx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17d7
xor eax, eax
cmp edi, 2
sete al
mov dword [esp + 8], edi
mov dword [esp + 0xc], 2
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], esi
mov dword [esp], ebx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 3
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17db
xor eax, eax
cmp edi, 1
sete al
mov dword [esp + 8], edi
lea edi, [ebp - 0x74]
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], esi
mov dword [esp], ebx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 3
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17dd
xor eax, eax
cmp esi, 3
sete al
mov dword [esp + 8], esi
mov dword [esp + 0xc], 3
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
lea edx, [ebp - 0x6c]
mov dword [esp], edi
mov dword [esp + 8], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 3
mov dword [esp + 4], 3
call dword [0x7af704]
sub esp, 0x14
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17e1
xor eax, eax
cmp esi, 1
sete al
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
lea edx, [ebp - 0x6c]
mov dword [esp], edi
lea edi, [ebp - 0x78]
mov dword [esp + 8], edx
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 3
mov dword [esp + 4], 3
call dword [0x7af704]
sub esp, 0x14
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17e3
xor eax, eax
cmp esi, 1
sete al
mov dword [esp + 8], esi
mov dword [esp], eax
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
call fcn.004b46e0
lea eax, [ebp - 0x40]
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 5
mov dword [esp + 8], eax
mov dword [esp + 4], 5
call dword [0x7af704]
sub esp, 0x14
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17e5
xor eax, eax
cmp esi, 1
sete al
mov dword [esp + 8], esi
lea esi, [ebp - 0x7c]
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp + 8], ebx
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 5
mov dword [esp + 4], 4
call dword [0x7af704]
sub esp, 0x14
mov ebx, eax
mov eax, 0x17e7
call fcn.004b3be0
xor eax, eax
cmp ebx, 1
mov dword [esp + 8], ebx
sete al
mov dword [esp + 0xc], 1
mov dword [esp], eax
mov dword [esp + 4], str.Got__u__expected__u_n
call fcn.004b46e0
lea eax, [ebp - 0x34]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
lea eax, [ebp - 0x1c]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call dword [0x7af704]
sub esp, 0x14
mov ebx, eax
mov eax, 0x17eb
call fcn.004b3be0
xor eax, eax
cmp ebx, 1
mov dword [esp + 8], ebx
sete al
mov dword [esp + 0xc], 1
mov dword [esp], eax
mov dword [esp + 4], str.Got__u__expected__u_n
call fcn.004b46e0
lea eax, [ebp - 0x28]
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
lea eax, [ebp - 0x4c]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call dword [0x7af704]
sub esp, 0x14
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17ed
xor eax, eax
cmp ebx, 3
sete al
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 3
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edi
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17ef
xor eax, eax
cmp ebx, 1
sete al
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
mov dword [esp], esi
lea esi, [ebp - 0x7e]
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edi
mov dword [esp + 4], 0xffffffff
call dword [0x7af704]
sub esp, 0x14
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17f1
xor eax, eax
cmp ebx, 1
sete al
mov dword [esp + 8], ebx
xor ebx, ebx
mov dword [esp + 0xc], 1
mov dword [esp + 4], str.Got__u__expected__u_n
mov dword [esp], eax
call fcn.004b46e0
xor edx, edx
mov word [ebp - 0x80], dx
lea esi, [esi]
nop
xor eax, eax
mov word [ebp - 0x7e], ax
xor eax, eax
jmp 0x4d6974
movzx ebx, word [ebp - 0x80]
movzx eax, ax
movzx ebx, bx
mov dword [esp + 8], esi
sub ebx, eax
lea eax, [ebp - 0x80]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
movzx ecx, word [ebp - 0x7e]
movzx edx, word [ebp - 0x80]
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17f9
mov eax, 3
test ebx, ebx
jg 0x4d69d5
sete al
movzx eax, al
add eax, 1
cmp eax, edi
mov dword [esp + 0x10], ecx
sete al
mov dword [esp + 0xc], edx
movzx eax, al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.wrong_result__d__04x__04x_n
call fcn.004b46e0
movzx eax, word [ebp - 0x80]
mov dword [esp], eax
call dword [0x7af6dc]
movzx ebx, ax
movzx eax, word [ebp - 0x7e]
sub esp, 4
mov dword [esp], eax
call dword [0x7af6dc]
movzx eax, ax
sub esp, 4
sub ebx, eax
lea eax, [ebp - 0x80]
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x7af704]
sub esp, 0x14
mov edi, eax
call fcn.0057d110
movzx ecx, word [ebp - 0x7e]
movzx edx, word [ebp - 0x80]
mov dword [eax], 0x5d8897
mov dword [eax + 4], 0x17fd
mov eax, 3
test ebx, ebx
jg 0x4d6a7a
sete al
movzx eax, al
add eax, 1
cmp eax, edi
mov dword [esp + 0x10], ecx
sete al
mov dword [esp + 0xc], edx
movzx eax, al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.wrong_result__d__04x__04x_n
call fcn.004b46e0
movzx eax, word [ebp - 0x7e]
add eax, 1
mov word [ebp - 0x7e], ax
cmp ax, 0x3ff
jbe 0x4d6970
movzx eax, word [ebp - 0x80]
lea ebx, [eax + 1]
mov word [ebp - 0x80], bx
cmp bx, 0x1ff
jbe 0x4d6960
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0x17bd
call fcn.004b3be0
mov dword [esp], str.CompareStringOrdinal_not_supported_n
call fcn.004b46b0
jmp 0x4d6ac9