Function at 0x10051920
Capabilities:
Check http status code
Encode data using xor

Disassembly:
push ebp
lea ebp, [esp - 0x998]
sub esp, 0x998
push 0xffffffffffffffff
push 0x10056030
mov eax, dword fs:[0]
push eax
sub esp, 0x16c
mov eax, dword [0x10060008]
xor eax, ebp
mov dword [ebp + 0x994], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp + 0x9a8]
xor ecx, ecx
mov esi, dword [ebp + 0x9a0]
mov edi, dword [ebp + 0x9ac]
push 8
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], ecx
call fcn.100079db
lea ecx, [ebp - 0x38]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x38], eax
mov dword [eax], ecx
mov dword [ebp - 4], 0
lea ecx, [ebp + 0x248]
mov dword [ebp + 0x248], 0
push 0x1005a774
mov dword [ebp + 0x258], 0
mov dword [ebp + 0x25c], 0xf
mov byte [ebp + 0x248], 0
call fcn.10006c90
push 0x124
lea eax, [ebp + 0x124]
mov byte [ebp - 4], 1
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x124
lea eax, [ebp]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [ebp - 0x44]
add esp, 0x18
xor ebx, ebx
mov dword [ebp - 0x48], ebx
push 0x10057bb3
call fcn.10006c90
cmp byte [esi], bl
je 0x10052534
nop word [eax + eax]
cmp ebx, dword [ebp + 0x9a4]
jae 0x10052534
mov al, byte [esi + ebx]
add esi, ebx
mov byte [ebp - 0xd], al
movsx eax, al
push eax
mov dword [ebp - 0x24], esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
add esp, 4
test eax, eax
je 0x10051a5e
inc ebx
jmp 0x10052527
mov al, byte [ebp - 0xd]
cmp al, 0x28
jne 0x10051a7e
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 2
push eax
lea ecx, [ebp - 0x38]
call fcn.10006510
inc ebx
jmp 0x10052527
cmp al, 0x29
jne 0x10051b0c
cmp dword [ebp - 0x28], 0
je 0x100525cf
lea ecx, [ebp - 0x38]
call fcn.100065a0
push edi
lea ecx, [ebp]
push ecx
push dword [eax]
mov ecx, dword [ebp - 0x18]
call fcn.100527c0
mov dword [ebp - 0x40], eax
test eax, eax
js 0x100526b9
cmp dword [edi], 2
je 0x100526b9
sub dword [ebp - 0x28], 1
mov eax, 0
mov ecx, dword [ebp - 0x2c]
cmove ecx, eax
cmp dword [ebp], 2
mov dword [ebp - 0x2c], ecx
je 0x10051a58
lea eax, [ebp + 7]
push eax
lea edx, [ebp + 0x248]
lea ecx, [ebp + 0x260]
call fcn.10006ed0
add esp, 4
mov ecx, dword [ebp - 0x44]
push eax
mov byte [ebp - 4], 2
call fcn.10006b40
lea ecx, [ebp + 0x260]
mov byte [ebp - 4], 1
call fcn.10006b60
jmp 0x10051a86
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp + 0x9a4]
mov ecx, dword [ebp - 0x18]
sub edi, ebx
push eax
lea eax, [ebp + 0x124]
mov dword [ebp - 0x1c], edi
push eax
push edi
push esi
call fcn.100528b0
mov edx, dword [ebp - 0x14]
mov ecx, eax
mov dword [ebp - 0x40], ecx
mov eax, dword [edx]
test ecx, ecx
js 0x10052690
cmp eax, 2
jne 0x10051bab
cmp dword [edx + 8], 0x620d
jne 0x10051bab
mov eax, dword [ebp - 0x20]
mov esi, ebx
cmp byte [eax + ebx], 0
je 0x10051b8a
mov edi, eax
nop dword [eax]
cmp esi, dword [ebp + 0x9a4]
jae 0x10051b81
movsx eax, byte [edi + esi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
add esp, 4
test eax, eax
je 0x10051b81
inc esi
cmp byte [edi + esi], 0
jne 0x10051b60
mov edi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
cmp byte [eax + esi], 0x28
je 0x100525db
mov esi, dword [ebp - 0x24]
mov dword [edx], 1
mov dword [edx + 4], 0
mov dword [edx + 8], 0
mov ecx, dword [ebp + 0x124]
test ecx, ecx
je 0x10052137
lea eax, [ecx - 0xc9]
cmp eax, 0x13
ja 0x10051d1b
cmp dword [ebp - 0x48], 0
jne 0x10052137
mov esi, dword [ebp - 0x44]
cmp dword [esi + 0x10], 0
jne 0x10051c4b
push 0x1005a77c
lea edx, [ebp + 0x248]
lea ecx, [ebp + 0x260]
call fcn.10006ed0
add esp, 4
mov byte [ebp - 4], 0xa
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x10051c02
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, esi
call fcn.10006d80
mov byte [ebp - 4], 1
mov edx, dword [ebp + 0x274]
cmp edx, 0x10
jb 0x10051c4b
mov ecx, dword [ebp + 0x260]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10051c41
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10052766
push edx
push ecx
call fcn.100079cd
add esp, 8
add ebx, dword [ebp + 0x22c]
mov dword [ebp - 0x48], 1
mov esi, dword [ebp - 0x28]
test esi, esi
je 0x10051c92
lea ecx, [ebp - 0x38]
call fcn.100065a0
mov edi, dword [ebp - 0x14]
lea ecx, [ebp]
push edi
push ecx
push dword [eax]
mov ecx, dword [ebp - 0x18]
call fcn.100527c0
mov dword [ebp - 0x40], eax
test eax, eax
js 0x100526b9
cmp dword [edi], 2
je 0x100526b9
mov esi, dword [ebp - 0x28]
jmp 0x10051c95
mov edi, dword [ebp - 0x14]
test esi, esi
je 0x10051d01
lea ecx, [ebp - 0x38]
call fcn.100065a0
cmp dword [eax], 2
je 0x10051d01
mov eax, dword [ebp + 0x234]
cmp eax, dword [ebp + 0x110]
jb 0x10051d01
mov eax, dword [ebp - 0x2c]
lea edx, [ebp + 0x248]
sub esi, 1
mov ecx, 0
mov dword [ebp - 0x28], esi
cmove eax, ecx
lea ecx, [ebp + 0x260]
mov dword [ebp - 0x2c], eax
lea eax, [ebp + 7]
push eax
call fcn.10006ed0
add esp, 4
mov ecx, dword [ebp - 0x44]
push eax
mov byte [ebp - 4], 0xb
call fcn.10006b40
lea ecx, [ebp + 0x260]
mov byte [ebp - 4], 1
call fcn.10006b60
jmp 0x10051c58
mov eax, dword [ebp + 0x124]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10006510
jmp 0x10052527
lea eax, [ecx - 0x12d]
cmp eax, 0x1d
ja 0x1005265f
push 0x458
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], 0
call fcn.100079db
mov esi, eax
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 0xc
push 0x124
mov dword [esi], eax
lea eax, [esi + 4]
push 0
push eax
mov dword [ebp - 0x1c], eax
call sub.VCRUNTIME140.dll_memset
push 0x190
mov dword [esi + 0x128], 0
call fcn.10007b55
mov edi, eax
lea edx, [esi + 0x12c]
add esp, 0x14
mov dword [edx], edi
lea eax, [edi + 0x18c]
cmp edi, edx
ja 0x10051da6
cmp eax, edx
jb 0x10051da6
xor ecx, ecx
mov eax, dword [edx]
mov dword [ecx + eax], 0
add ecx, 4
cmp ecx, 0x190
jb 0x10051d90
jmp 0x10051daf
mov ecx, 0x64
xor eax, eax
rep stosd dword es:[edi], eax
push 0x320
lea eax, [esi + 0x138]
mov dword [esi + 0x130], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov esi, dword [ebp - 0x20]
mov byte [ebp - 4], 1
add ebx, dword [ebp + 0x22c]
mov al, byte [esi + ebx]
mov byte [ebp - 0xd], al
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
mov edi, dword [ebp + 0x9a4]
add esp, 0x10
test eax, eax
je 0x10051e16
mov al, byte [esi + ebx]
test al, al
je 0x10051e16
cmp ebx, edi
jae 0x10051e16
mov byte [ebp - 0xd], al
inc ebx
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
add esp, 4
test eax, eax
jne 0x10051df6
cmp byte [ebp - 0xd], 0x28
jne 0x10052632
mov al, byte [esi + ebx + 1]
inc ebx
mov byte [ebp - 0xd], al
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
add esp, 4
test eax, eax
je 0x10051e60
nop dword [eax]
mov al, byte [esi + ebx]
test al, al
je 0x10051e60
cmp ebx, edi
jae 0x10051e60
mov byte [ebp - 0xd], al
inc ebx
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
add esp, 4
test eax, eax
jne 0x10051e40
movsx eax, byte [ebp - 0xd]
push eax
mov dword [ebp - 0x24], ebx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalnum]
add esp, 4
test eax, eax
jne 0x10051e8c
mov al, byte [ebp - 0xd]
cmp al, 0x2d
je 0x10051e8c
cmp al, 0x2b
je 0x10051e8c
cmp al, 0x28
je 0x10051e8c
cmp al, 0x29
jne 0x10052619
mov edi, dword [ebp - 0x1c]
lea esi, [ebp + 0x124]
mov ecx, 0x49
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x20]
mov al, byte [edi + ebx]
test al, al
je 0x10051fab
mov esi, dword [ebp + 0x9a4]
cmp ebx, esi
jae 0x10051fab
mov byte [ebp - 0xd], al
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
add esp, 4
test eax, eax
je 0x10051ed2
inc ebx
jmp 0x10051fa0
mov al, byte [ebp - 0xd]
cmp al, 0x28
jne 0x10051f19
cmp byte [edi + ebx], 0
mov ecx, 1
je 0x100525f5
cmp ebx, esi
jae 0x10051f05
test ecx, ecx
je 0x10051f05
mov al, byte [edi + ebx + 1]
inc ebx
cmp al, 0x28
jne 0x10051efc
inc ecx
jmp 0x10051f01
cmp al, 0x29
jne 0x10051f01
dec ecx
test al, al
jne 0x10051ee8
cmp al, 0x29
je 0x10051f11
cmp al, 0x3b
jne 0x100525f5
mov al, byte [edi + ebx + 1]
inc ebx
mov byte [ebp - 0xd], al
cmp al, 0x3b
je 0x10051f2e
cmp al, 0x29
jne 0x10051ecc
mov eax, dword [ebp - 0x24]
cmp eax, ebx
jne 0x10051f31
inc ebx
jmp 0x10051fb5
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x3c]
cmp dword [edx + 0x130], 0x64
je 0x10052601
mov esi, ebx
sub esi, eax
add eax, edi
push esi
push eax
lea eax, [ebp + 0x578]
push 0x100
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov edi, dword [ebp - 0x14]
lea eax, [esi + 1]
mov ecx, dword [ebp - 0x3c]
add esp, 0x10
push edi
push eax
lea eax, [ebp + 0x578]
push eax
call fcn.10053000
mov dword [ebp - 0x40], eax
test eax, eax
js 0x1005261c
cmp dword [edi], 1
jne 0x1005261c
cmp byte [ebp - 0xd], 0x29
lea eax, [ebx + 1]
mov edi, dword [ebp - 0x20]
mov ebx, eax
mov dword [ebp - 0x24], eax
je 0x10051fb5
mov esi, dword [ebp + 0x9a4]
mov al, byte [edi + ebx]
test al, al
jne 0x10051eb0
cmp byte [ebp - 0xd], 0x29
jne 0x10052632
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x130]
cmp eax, dword [ebp + 0x238]
jb 0x10052619
cmp eax, dword [ebp + 0x23c]
ja 0x10052619
mov eax, dword [ebp - 0x4c]
mov esi, ebx
sub esi, eax
add eax, edi
push esi
push eax
lea eax, [ebp + 0x678]
push 0x300
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
add esp, 0x10
lea ecx, [ebp + 0x678]
mov edi, 0xdc379acf
test esi, esi
je 0x10052027
nop word [eax + eax]
movzx eax, byte [ecx]
lea ecx, [ecx + 1]
movzx eax, byte [eax + 0x10057ed0]
xor edi, eax
rol edi, 5
sub esi, 1
jne 0x10052010
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x24], 0
mov dword [eax + 0x128], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [eax + 0x33c]
test esi, esi
je 0x1005206d
mov edx, dword [eax + 0x338]
nop dword [eax]
mov eax, dword [edx]
cmp dword [eax + 0x128], edi
je 0x10052064
inc ecx
add edx, 4
cmp ecx, esi
jb 0x10052050
jmp 0x1005206d
mov dword [ebp - 0x24], 1
mov esi, ecx
push 0xa
push 0x19
lea eax, [ebp + 0x978]
push eax
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltoa_s]
mov esi, dword [ebp - 0x1c]
lea edi, [ebp - 0x178]
mov ecx, 0x49
lea eax, [ebp - 0x174]
rep movsd dword es:[edi], dword [esi]
push eax
lea edx, [ebp + 0x248]
lea ecx, [ebp + 0x260]
call fcn.10006ed0
add esp, 0x14
mov esi, dword [ebp - 0x44]
mov ecx, esi
push eax
mov byte [ebp - 4], 0xd
call fcn.10006b40
lea ecx, [ebp + 0x260]
mov byte [ebp - 4], 1
call fcn.10006b60
lea ecx, [ebp + 0x978]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100520d1
sub ecx, edx
lea eax, [ebp + 0x978]
push ecx
push eax
mov ecx, esi
call fcn.10006d80
cmp dword [ebp - 0x24], 0
jne 0x1005211f
mov esi, dword [ebp - 0x18]
mov ecx, dword [esi + 0x33c]
cmp ecx, 0x19
je 0x1005260d
mov eax, dword [esi + 0x338]
mov edx, dword [ebp - 0x3c]
mov dword [eax + ecx*4], edx
mov ecx, esi
inc dword [esi + 0x33c]
call fcn.10052cd0
jmp 0x10052524
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.10006460
mov esi, dword [ebp - 0x18]
mov ecx, esi
call fcn.10052cd0
jmp 0x10052524
push edi
push esi
call fcn.10052af0
mov edi, eax
test edi, edi
jne 0x1005214d
cmp dword [ebp - 0x48], eax
je 0x10052676
push edi
push esi
lea eax, [ebp + 0x678]
push 0x300
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
movsx eax, byte [esi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
add esp, 0x14
test eax, eax
je 0x1005245a
push edi
lea eax, [ebp + 0x678]
push eax
lea eax, [ebp + 0x278]
push 0x300
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
add esp, 0x10
test edi, edi
je 0x100521c4
xor esi, esi
nop dword [eax]
mov al, byte [ebp + esi + 0x278]
test al, al
je 0x100521c4
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [ebp + esi + 0x278], al
add esp, 4
inc esi
cmp esi, edi
jb 0x100521a0
lea edx, [ebp + 0x278]
mov ecx, edi
mov esi, 0xdc379acf
test edi, edi
je 0x100521f7
nop word [eax + eax]
movzx eax, byte [edx]
lea edx, [edx + 1]
movzx eax, byte [eax + 0x10057ed0]
xor esi, eax
rol esi, 5
sub ecx, 1
jne 0x100521e0
xor eax, eax
cmp esi, dword [0x10063df0]
jne 0x10052209
mov dword [ebp - 0x50], eax
mov eax, 1
cmp esi, dword [0x10063ef8]
jne 0x1005221a
mov dword [ebp - 0x50], 1
jmp 0x1005221e
test eax, eax
je 0x10052251
push 0xa
push 0x300
lea eax, [ebp + 0x678]
push eax
imul eax, dword [ebp - 0x50], 0x108
push dword [eax + 0x10063df4]
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltoa_s]
mov esi, dword [ebp - 0x18]
add esp, 0x10
mov ecx, esi
call fcn.10052cd0
jmp 0x100524a8
lea edx, [ebp + 0x678]
mov ecx, edi
mov esi, 0xdc379acf
test edi, edi
je 0x10052279
movzx eax, byte [edx]
lea edx, [edx + 1]
movzx eax, byte [eax + 0x10057ed0]
xor esi, eax
rol esi, 5
sub ecx, 1
jne 0x10052262
lea eax, [ebp - 0x50]
push eax
push esi
mov esi, dword [ebp - 0x18]
mov ecx, esi
call fcn.10052c70
test eax, eax
jne 0x10052451
xorps xmm0, xmm0
mov dword [ebp + method.MMVariable.virtual_0], vtable.MMVariable.0
mov dword [ebp + 0x97c], eax
mov dword [ebp + 0x980], eax
mov dword [ebp + 0x984], eax
movsd qword [ebp + 0x988], xmm0
push edi
lea eax, [ebp + 0x678]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp + 0x978]
call fcn.100542d0
cmp dword [esi], 0
lea eax, [ebp + 0x260]
mov dword [ebp - 0x4c], eax
je 0x10052389
mov byte [ebp - 4], 4
mov ecx, eax
push dword [ebp + 0x980]
mov dword [ebp + method.MMVariable.virtual_0], vtable.MMVariable.0
push dword [ebp + 0x97c]
mov dword [ebp + 0x264], 0
call fcn.100542d0
movsd xmm0, qword [ebp + 0x988]
mov eax, dword [esi]
movsd qword [ebp + 0x270], xmm0
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
push ecx
push dword [ebp + 0x26c]
mov ecx, eax
call fcn.10052c70
test eax, eax
jne 0x1005241a
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x54], esi
mov byte [ebp - 4], 6
mov ecx, esi
mov dword [esi], vtable.MMVariable.0
mov dword [esi + 4], eax
push dword [ebp + 0x268]
push dword [ebp + 0x264]
call fcn.100542d0
movsd xmm0, qword [ebp + 0x270]
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x4c]
add ecx, 0x318
movsd qword [esi + 0x10], xmm0
call fcn.10006920
jmp 0x1005241a
mov byte [ebp - 4], 7
lea ecx, [ebp + 0x260]
push dword [ebp + 0x980]
mov dword [ebp + method.MMVariable.virtual_0], vtable.MMVariable.0
push dword [ebp + 0x97c]
mov dword [ebp + 0x264], 0
call fcn.100542d0
movsd xmm0, qword [ebp + 0x988]
add esi, 0x318
movsd qword [ebp + 0x270], xmm0
mov byte [ebp - 4], 8
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
cmp eax, ecx
jb 0x100523ec
lea eax, [ecx + 1]
mov ecx, esi
push eax
call fcn.10006770
mov eax, dword [esi + 8]
jmp 0x100523f0
inc eax
mov dword [esi + 8], eax
push dword [ebp + 0x268]
lea ecx, [eax + eax*2]
mov eax, dword [esi]
push dword [ebp + 0x264]
lea esi, [eax + ecx*8]
mov eax, dword [esi - 0x18]
lea ecx, [esi - 0x18]
call dword [eax + 8]
movsd xmm0, qword [ebp + 0x270]
movsd qword [esi - 8], xmm0
mov eax, dword [ebp + 0x264]
mov dword [ebp + method.MMVariable.virtual_0], vtable.MMVariable.0
test eax, eax
je 0x10052437
push eax
call fcn.10007a2e
add esp, 4
mov byte [ebp - 4], 1
mov eax, dword [ebp + 0x97c]
test eax, eax
je 0x1005244e
push eax
call fcn.10007a2e
add esp, 4
mov esi, dword [ebp - 0x18]
mov ecx, esi
call fcn.10052cd0
jmp 0x100524a8
cmp byte [esi], 0x30
jne 0x100524a8
movsx eax, byte [esi + 1]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
add esp, 4
cmp eax, 0x78
jne 0x100524a8
push edi
push esi
lea eax, [ebp + 0x678]
push 0x300
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
add esp, 0x10
lea eax, [ebp + 0x678]
mov ecx, eax
push 0xa
push 0x300
push eax
call fcn.10012940
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa_s]
add esp, 0x10
lea eax, [ebp + 0x678]
push eax
lea edx, [ebp + 0x248]
lea ecx, [ebp + 0x260]
call fcn.10006ed0
add esp, 4
mov byte [ebp - 4], 9
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x100524d1
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.10006d80
mov byte [ebp - 4], 1
mov edx, dword [ebp + 0x274]
cmp edx, 0x10
jb 0x1005251b
mov ecx, dword [ebp + 0x260]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10052511
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10052766
push edx
push ecx
call fcn.100079cd
add esp, 8
mov dword [ebp - 0x48], 0
add ebx, edi
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x20]
cmp byte [esi + ebx], 0
jne 0x10051a30
cmp dword [ebp - 0x28], 0
mov ebx, dword [ebp - 0x40]
je 0x100526ce
lea ecx, [ebp - 0x38]
call fcn.100065a0
push edi
lea ecx, [ebp + 0x124]
push ecx
push dword [eax]
mov ecx, dword [ebp - 0x18]
call fcn.100527c0
mov ebx, eax
test ebx, ebx
js 0x100526b9
cmp dword [edi], 2
je 0x100526b9
sub dword [ebp - 0x28], 1
mov ecx, 0
mov eax, dword [ebp - 0x2c]
cmove eax, ecx
cmp dword [ebp + 0x124], 2
mov dword [ebp - 0x2c], eax
je 0x100525cf
lea eax, [ebp + 0x12b]
push eax
lea edx, [ebp + 0x248]
lea ecx, [ebp + 0x260]
call fcn.10006ed0
add esp, 4
mov ecx, dword [ebp - 0x44]
push eax
mov byte [ebp - 4], 0xe
call fcn.10006b40
lea ecx, [ebp + 0x260]
mov byte [ebp - 4], 1
call fcn.10006b60
cmp dword [ebp - 0x28], 0
jne 0x10052541
jmp 0x100526ce
mov dword [edi + 8], 0x61b0
jmp 0x100526c0
mov ebx, 0x80004005
mov dword [edx], 3
mov dword [edx + 4], ebx
mov dword [edx + 8], 0x620d
jmp 0x100526ce
mov eax, dword [ebp - 0x14]
mov dword [eax + 8], 0x61b8
jmp 0x1005263c
mov eax, dword [ebp - 0x14]
mov dword [eax + 8], 0x61b7
jmp 0x1005263c
mov eax, dword [ebp - 0x14]
mov dword [eax + 8], 0x61ba
jmp 0x1005263c
mov edi, dword [ebp - 0x14]
mov dword [edi], 3
mov dword [edi + 4], 0x80004005
mov dword [edi + 8], 0x61b6
jmp 0x10052649
mov eax, dword [ebp - 0x14]
mov dword [eax + 8], 0x61b5
mov dword [eax + 4], 0x80004005
mov dword [eax], 3
mov eax, dword [ebp - 0x3c]
mov ebx, 0x80004005
test eax, eax
je 0x100526ce
push ecx
mov ecx, eax
call fcn.10006460
jmp 0x100526ce
mov ebx, 0x80004005
mov dword [edx], 3
mov dword [edx + 4], ebx
mov dword [edx + 8], 0x61b3
jmp 0x100526ce
mov eax, dword [ebp - 0x14]
mov ebx, 0x80004005
mov dword [eax], 3
mov dword [eax + 4], ebx
mov dword [eax + 8], 0x61b2
jmp 0x100526ce
cmp eax, 3
jne 0x100526a0
cmp dword [edx + 8], 0
je 0x100526a0
mov ebx, dword [ebp - 0x40]
jmp 0x100526ce
mov ebx, dword [ebp - 0x40]
mov dword [edx], 3
mov dword [edx + 4], 0x80004005
mov dword [edx + 8], 0x61af
jmp 0x100526ce
mov dword [edi + 8], 0x61af
mov ebx, 0x80004005
mov dword [edi], 3
mov dword [edi + 4], ebx
mov edx, dword [ebp + 0x25c]
cmp edx, 0x10
jb 0x10052704
mov ecx, dword [ebp + 0x248]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100526fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10052766
push edx
push ecx
call fcn.100079cd
add esp, 8
cmp dword [ebp - 0x28], 0
je 0x1005271d
nop word [eax + eax]
sub dword [ebp - 0x28], 1
jne 0x10052710
mov dword [ebp - 0x2c], 0
mov esi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
test esi, esi
je 0x10052745
mov eax, dword [ecx + esi*4 - 4]
dec esi
test eax, eax
je 0x1005273e
push 0x10
push eax
call fcn.100079cd
mov ecx, dword [ebp - 0x34]
add esp, 8
test esi, esi
jne 0x10052727
mov esi, dword [ebp - 0x30]
test ecx, ecx
je 0x10052776
shl esi, 2
mov eax, ecx
cmp esi, 0x1000
jb 0x1005276c
mov ecx, dword [ecx - 4]
add esi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1005276c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push esi
push ecx
call fcn.100079cd
add esp, 8
mov eax, dword [ebp - 0x38]
push 8
push eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
call fcn.100079cd
add esp, 8
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x994]
xor ecx, ebp
call fcn.100076a5
lea esp, [ebp + 0x998]
pop ebp
ret 0x10