Function at 0x410f40
Capabilities:
Initialize winhttp library
Receive http response

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47611d
mov eax, dword fs:[0]
push eax
sub esp, 0x260
mov eax, dword [0x497644]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x178], ebx
mov dword [ebp - 0x1b8], eax
cmp dword [eax + 0x14], ebx
je 0x411a2e
cmp dword [eax + 0x34], ebx
je 0x411a2e
mov dword [ebp - 0x34], ebx
push 8
mov dword [ebp - 4], ebx
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411d73
mov dword [ebp - 0x34], eax
mov dword [eax + 4], ebx
xor ecx, ecx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x34]
mov dword [ecx], eax
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], ebx
mov byte [ebp - 0x30], bl
mov dword [ebp - 4], 1
mov dword [ebp - 0x188], 2
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
sub esp, 0x20
mov esi, esp
mov dword [ebp - 0x184], esp
lea ebx, [ebx]
mov dword [ebp - 0x184], esi
mov dword [esi], ebx
push 8
mov byte [ebp - 4], 2
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411d40
mov dword [esi], eax
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov edx, dword [esi]
mov dword [edx], esi
push 0xffffffffffffffff
mov byte [ebp - 4], 3
push ebx
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
push 0x49a0d0
mov ecx, esi
mov byte [esi + 4], bl
call fcn.00401e50
lea esi, [ebp - 0xc8]
mov byte [ebp - 4], 1
call fcn.0040f210
push ebx
push ebx
push ebx
push ebx
push str.OneDriveTools
mov byte [ebp - 4], 4
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov dword [ebp - 0xa8], eax
cmp eax, ebx
je 0x411096
push 4
lea ecx, [ebp - 0x184]
push ecx
push 0x54
push eax
mov dword [ebp - 0x184], 0xa00
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
setne al
cmp al, bl
jne 0x4110a6
call edi
push eax
push str.Error__u_in_WinHttpSetOption._n
jmp 0x41109e
call edi
push eax
push str.Error__u_in_WinHttpOpen._n
call fcn.0040f1a0
add esp, 8
lea edi, [ebp - 0xc8]
call fcn.0040f3d0
sub esp, 0x20
mov esi, esp
mov dword [ebp - 0x184], esp
mov dword [ebp - 0x180], esi
mov dword [esi], ebx
push 8
mov byte [ebp - 4], 5
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411d0d
mov dword [esi], eax
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov edx, dword [esi]
mov dword [edx], esi
push 0xffffffffffffffff
mov byte [ebp - 4], 6
push ebx
mov edi, 0xf
mov dword [esi + 0x18], edi
mov dword [esi + 0x14], ebx
push 0x49a090
mov ecx, esi
mov byte [esi + 4], bl
call fcn.00401e50
sub esp, 0x20
mov byte [ebp - 4], 7
xor eax, eax
mov esi, esp
mov dword [ebp - 0x180], esp
call fcn.004105c0
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 4
call fcn.0040f460
mov dword [ebp - 0x94], ebx
push 8
mov byte [ebp - 4], 8
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411cda
mov dword [ebp - 0x94], eax
mov dword [eax + 4], ebx
xor ecx, ecx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x94]
lea eax, [ebp - 0x94]
mov dword [ecx], eax
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], ebx
mov byte [ebp - 0x90], bl
push 0xffffffffffffffff
push ebx
push 0x499f70
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499dd0
lea ecx, [ebp - 0x94]
call fcn.00401d60
sub esp, 0x20
mov esi, esp
mov dword [ebp - 0x180], esp
mov dword [ebp - 0x180], esi
mov dword [esi], ebx
push 8
mov byte [ebp - 4], 0xa
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411ca7
mov dword [esi], eax
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov edx, dword [esi]
mov dword [edx], esi
push 0xffffffffffffffff
mov byte [ebp - 4], 0xb
push ebx
mov dword [esi + 0x18], edi
mov dword [esi + 0x14], ebx
push 0x499f70
mov ecx, esi
mov byte [esi + 4], bl
call fcn.00401e50
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 9
call fcn.0040f690
mov eax, dword [ebp - 0x30]
mov esi, 0x10
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x1c], esi
jae 0x41120a
lea eax, [ebp - 0x30]
push 9
push str.client_id
lea ecx, [ebp - 0x34]
mov byte [eax], bl
call fcn.00401a80
push 0xffffffffffffffff
push ebx
push 0x499f30
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499eb0
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499c70
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xc
push str.redirect_uri
lea ecx, [ebp - 0x34]
call fcn.00401a80
push 0xffffffffffffffff
push ebx
push 0x499f30
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499e30
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499c70
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xd
push str.client_secret
lea ecx, [ebp - 0x34]
call fcn.00401a80
push 0xffffffffffffffff
push ebx
push 0x499f30
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499c90
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499c70
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xd
push str.refresh_token
lea ecx, [ebp - 0x34]
call fcn.00401a80
push 0xffffffffffffffff
push ebx
push 0x499f30
lea ecx, [ebp - 0x34]
call fcn.00401d60
mov eax, dword [ebp - 0x1b8]
push 0xffffffffffffffff
push ebx
add eax, 0x20
push eax
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xffffffffffffffff
push ebx
push 0x499c70
lea ecx, [ebp - 0x34]
call fcn.00401d60
push 0xa
push str.grant_type
lea ecx, [ebp - 0x34]
call fcn.00401a80
push 0xffffffffffffffff
push ebx
push 0x499f30
lea ecx, [ebp - 0x34]
call fcn.00401d60
lea ecx, [ebp - 0xe8]
push ecx
call fcn.00410620
add esp, 4
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xc
call fcn.00401d60
cmp dword [ebp - 0xd0], esi
jb 0x411362
mov edx, dword [ebp - 0xe4]
push edx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xd4], ebx
mov byte [ebp - 0xe4], bl
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0xe8], ebx
je 0x4113be
push 3
lea ecx, [ebp - 0x1c0]
call fcn.00439ed0
mov eax, dword [ebp - 0xe8]
cmp dword [eax + 4], ebx
je 0x4113aa
mov ecx, dword [eax + 4]
mov dword [ecx], ebx
mov edx, dword [eax + 4]
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
cmp ecx, ebx
jne 0x411398
mov edx, dword [ebp - 0xe8]
lea ecx, [ebp - 0x1c0]
mov dword [edx + 4], ebx
call fcn.00439f10
mov eax, dword [ebp - 0xe8]
push eax
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x54], ebx
push 8
mov byte [ebp - 4], 0xe
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411c74
mov dword [ebp - 0x54], eax
mov dword [eax + 4], ebx
xor ecx, ecx
mov dword [eax], ecx
mov edx, dword [ebp - 0x54]
lea ecx, [ebp - 0x54]
mov dword [edx], ecx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x50], bl
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0xf
call fcn.00401d60
cmp dword [ebp - 0xa8], ebx
je 0x411453
cmp dword [ebp - 0xa4], ebx
je 0x411453
mov eax, dword [ebp - 0xa0]
cmp eax, ebx
je 0x411453
mov ecx, dword [ebp - 0x40]
push ebx
push ecx
push ebx
push ebx
push ebx
push ebx
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
cmp eax, ebx
jne 0x411453
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Error__u_in_WinHttpSendRequest._n
call fcn.0040f1a0
add esp, 8
sub esp, 0x20
mov edi, esp
mov dword [ebp - 0x180], esp
mov dword [ebp - 0x180], edi
mov dword [edi], ebx
push 8
mov byte [ebp - 4], 0x10
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411c41
mov dword [edi], eax
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov edx, dword [edi]
mov dword [edx], edi
push 0xffffffffffffffff
mov byte [ebp - 4], 0x11
push ebx
lea eax, [ebp - 0x54]
mov esi, 0xf
mov dword [edi + 0x18], esi
mov dword [edi + 0x14], ebx
push eax
mov ecx, edi
mov byte [edi + 4], bl
call fcn.00401e50
lea edi, [ebp - 0xc8]
mov byte [ebp - 4], 0xf
call fcn.0040fc10
mov eax, dword [ebp - 0xa0]
cmp eax, ebx
je 0x4114e2
push ebx
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
cmp eax, ebx
jne 0x4114e2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Error__u_in_WinHttpReceiveResponse._n
call fcn.0040f1a0
add esp, 8
mov dword [ebp - 0x74], ebx
push 8
mov byte [ebp - 4], 0x12
call fcn.0043c350
add esp, 4
cmp eax, ebx
je 0x411c0e
mov dword [ebp - 0x74], eax
mov dword [eax + 4], ebx
xor ecx, ecx
mov dword [eax], ecx
mov edx, dword [ebp - 0x74]
lea ecx, [ebp - 0x74]
mov dword [edx], ecx
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x60], ebx
mov byte [ebp - 0x70], bl
lea eax, [ebp - 0xc8]
push eax
mov edi, ecx
mov byte [ebp - 4], 0x13
call fcn.0040f7d0
lea ecx, [ebp - 0x174]
call fcn.00433810
push ebx
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0x14
call fcn.0042b100
push 1
lea ecx, [ebp - 0x19c]
push ecx
mov edx, edi
push edx
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x15
call fcn.004338d0
test al, al
je 0x411b2b
push str.unauthorized_client
lea ecx, [ebp - 0x26c]
call fcn.0042b3c0
lea eax, [ebp - 0x26c]
push eax
mov byte [ebp - 4], 0x16
or dword [ebp - 0x178], 1
push str.error
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042bd00
test al, al
jne 0x41162d
push str.invalid_grant
lea ecx, [ebp - 0x24c]
call fcn.0042b3c0
lea ecx, [ebp - 0x24c]
push ecx
mov dword [ebp - 4], 0x17
or dword [ebp - 0x178], 2
push str.error
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042bd00
test al, al
jne 0x41162d
push str.invalid_client
lea ecx, [ebp - 0x25c]
call fcn.0042b3c0
lea edx, [ebp - 0x25c]
push edx
mov dword [ebp - 4], 0x18
or dword [ebp - 0x178], 4
push str.error
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042bd00
mov byte [ebp - 0x179], bl
test al, al
je 0x411634
mov byte [ebp - 0x179], 1
mov dword [ebp - 4], 0x17
test byte [ebp - 0x178], 4
je 0x411656
and dword [ebp - 0x178], 0xfffffffb
lea ecx, [ebp - 0x25c]
call fcn.0042b8e0
mov dword [ebp - 4], 0x16
test byte [ebp - 0x178], 2
je 0x411678
and dword [ebp - 0x178], 0xfffffffd
lea ecx, [ebp - 0x24c]
call fcn.0042b8e0
mov dword [ebp - 4], 0x15
test byte [ebp - 0x178], 1
je 0x41169a
and dword [ebp - 0x178], 0xfffffffe
lea ecx, [ebp - 0x26c]
call fcn.0042b8e0
cmp byte [ebp - 0x179], bl
je 0x411a4e
mov eax, dword [ebp - 0x188]
dec eax
mov dword [ebp - 0x188], eax
cmp eax, 1
jne 0x4119c3
call fcn.00410800
mov eax, dword [ebp - 0xa0]
mov edi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp eax, ebx
je 0x4116d4
push eax
call edi
mov eax, dword [ebp - 0xa4]
cmp eax, ebx
je 0x4116e1
push eax
call edi
mov eax, dword [ebp - 0xa8]
cmp eax, ebx
je 0x4116ee
push eax
call edi
mov esi, 0x10
cmp dword [ebp - 0xb0], esi
jb 0x41170a
mov eax, dword [ebp - 0xc4]
push eax
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0xb0], 0xf
mov dword [ebp - 0xb4], ebx
mov byte [ebp - 0xc4], bl
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0xc8], ebx
je 0x41176a
push 3
lea ecx, [ebp - 0x1c8]
call fcn.00439ed0
mov eax, dword [ebp - 0xc8]
cmp dword [eax + 4], ebx
je 0x411756
mov ecx, dword [eax + 4]
mov dword [ecx], ebx
mov edx, dword [eax + 4]
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
cmp ecx, ebx
jne 0x411744
mov edx, dword [ebp - 0xc8]
lea ecx, [ebp - 0x1c8]
mov dword [edx + 4], ebx
call fcn.00439f10
mov eax, dword [ebp - 0xc8]
push eax
call fcn.0043c1d0
add esp, 4
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0xc8], ebx
mov byte [ebp - 4], 0x14
call fcn.0042b8e0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x13
call fcn.00406150
cmp dword [ebp - 0x5c], esi
jb 0x4117ae
mov ecx, dword [ebp - 0x70]
push ecx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x5c], 0xf
mov dword [ebp - 0x60], ebx
mov byte [ebp - 0x70], bl
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x74], ebx
je 0x411803
push 3
lea ecx, [ebp - 0x1d0]
call fcn.00439ed0
mov eax, dword [ebp - 0x74]
cmp dword [eax + 4], ebx
je 0x4117f2
lea esp, [esp]
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
cmp edx, ebx
jne 0x4117e0
mov eax, dword [ebp - 0x74]
lea ecx, [ebp - 0x1d0]
mov dword [eax + 4], ebx
call fcn.00439f10
mov ecx, dword [ebp - 0x74]
push ecx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x74], ebx
cmp dword [ebp - 0x3c], esi
jb 0x411823
mov edx, dword [ebp - 0x50]
push edx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x3c], 0xf
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x50], bl
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x54], ebx
je 0x411873
push 3
lea ecx, [ebp - 0x1d8]
call fcn.00439ed0
mov eax, dword [ebp - 0x54]
cmp dword [eax + 4], ebx
je 0x411862
mov edi, edi
mov ecx, dword [eax + 4]
mov dword [ecx], ebx
mov edx, dword [eax + 4]
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
cmp ecx, ebx
jne 0x411850
mov edx, dword [ebp - 0x54]
lea ecx, [ebp - 0x1d8]
mov dword [edx + 4], ebx
call fcn.00439f10
mov eax, dword [ebp - 0x54]
push eax
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x54], ebx
cmp dword [ebp - 0x7c], esi
jb 0x411896
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], ebx
mov byte [ebp - 0x90], bl
mov byte [ebp - 4], 0x1c
cmp dword [ebp - 0x94], ebx
je 0x4118f6
push 3
lea ecx, [ebp - 0x1d4]
call fcn.00439ed0
mov eax, dword [ebp - 0x94]
cmp dword [eax + 4], ebx
je 0x4118e2
lea ebx, [ebx]
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
cmp edx, ebx
jne 0x4118d0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x1d4]
mov dword [eax + 4], ebx
call fcn.00439f10
mov ecx, dword [ebp - 0x94]
push ecx
call fcn.0043c1d0
mov eax, dword [ebp - 0xa0]
add esp, 4
mov dword [ebp - 0x94], ebx
cmp eax, ebx
je 0x411918
push eax
call edi
mov eax, dword [ebp - 0xa4]
cmp eax, ebx
je 0x411925
push eax
call edi
mov eax, dword [ebp - 0xa8]
cmp eax, ebx
je 0x411932
push eax
call edi
cmp dword [ebp - 0xb0], esi
jb 0x411949
mov edx, dword [ebp - 0xc4]
push edx
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0xb0], 0xf
mov dword [ebp - 0xb4], ebx
mov byte [ebp - 0xc4], bl
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0xc8], ebx
je 0x4119a9
push 3
lea ecx, [ebp - 0x1a4]
call fcn.00439ed0
mov eax, dword [ebp - 0xc8]
cmp dword [eax + 4], ebx
je 0x411995
mov ecx, dword [eax + 4]
mov dword [ecx], ebx
mov edx, dword [eax + 4]
mov ecx, dword [edx + 4]
mov dword [eax + 4], ecx
cmp ecx, ebx
jne 0x411983
mov edx, dword [ebp - 0xc8]
lea ecx, [ebp - 0x1a4]
mov dword [edx + 4], ebx
call fcn.00439f10
mov eax, dword [ebp - 0xc8]
push eax
call fcn.0043c1d0
add esp, 4
mov dword [ebp - 0xc8], ebx
jmp 0x410fd9
cmp eax, ebx
jne 0x411a4e
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0x14
call fcn.0042b8e0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x13
call fcn.00406150
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xf
call fcn.00401780
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 9
call fcn.00401780
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 4
call fcn.00401780
lea esi, [ebp - 0xc8]
mov byte [ebp - 4], 1
call fcn.0040f2f0
lea ecx, [ebp - 0x34]
mov dword [ebp - 4], 0xffffffff
call fcn.00401780
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0043bb50
mov esp, ebp
pop ebp
ret 4
push str.access_token
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042d730
test al, al
jne 0x411aae
lea ecx, [ebp - 0xe8]
push ecx
push str.access_token
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042bf60
push 0xffffffffffffffff
push ebx
lea edx, [ebp - 0xe8]
push edx
mov ecx, 0x499d10
mov byte [ebp - 4], 0x1e
call fcn.00401e50
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x15
call fcn.00401780
push str.refresh_token
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042d730
test al, al
jne 0x411b0e
lea eax, [ebp - 0xe8]
push eax
push str.refresh_token
lea ecx, [ebp - 0x19c]
call fcn.0042ce50
mov ecx, eax
call fcn.0042bf60
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0xe8]
push ecx
mov ecx, 0x499d30
mov byte [ebp - 4], 0x1f
call fcn.00401e50
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x15
call fcn.00401780
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x180], esp
push 0x499d10
call fcn.00407830
call fcn.00402320
add esp, 0x20
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0x14
call fcn.0042b8e0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x13
call fcn.00406150
mov edi, 0x10
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x5c], edi
jb 0x411b63
mov edx, dword [ebp - 0x70]
push edx
call fcn.0043c1d0
add esp, 4
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x60], ebx
mov byte [ebp - 0x70], bl
call fcn.004019b0
mov byte [ebp - 4], 9
cmp dword [ebp - 0x3c], edi
jb 0x411b89
mov eax, dword [ebp - 0x50]
push eax
call fcn.0043c1d0
add esp, 4
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x50], bl
call fcn.004019b0
mov byte [ebp - 4], 4
cmp dword [ebp - 0x7c], edi
jb 0x411bb2
mov ecx, dword [ebp - 0x90]
push ecx
call fcn.0043c1d0
add esp, 4
mov edi, 0xf
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], ebx
mov byte [ebp - 0x90], bl
call fcn.004019b0
lea esi, [ebp - 0xc8]
mov byte [ebp - 4], 1
call fcn.0040f2f0
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1c], 0x10
jb 0x411bf6
mov edx, dword [ebp - 0x30]
push edx
call fcn.0043c1d0
add esp, 4
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov byte [ebp - 0x30], bl
call fcn.004019b0
mov al, 1
jmp 0x411a30
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 0x1bc], ebx
call fcn.0043bb90
push 0x491a28
lea ecx, [ebp - 0x1fc]
push ecx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea edx, [ebp - 0x1a8]
push edx
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x1a8], ebx
call fcn.0043bb90
push 0x491a28
lea eax, [ebp - 0x214]
push eax
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea ecx, [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x1b0], ebx
call fcn.0043bb90
push 0x491a28
lea edx, [ebp - 0x22c]
push edx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0x1f0]
mov dword [ebp - 0x1cc], ebx
call fcn.0043bb90
push 0x491a28
lea ecx, [ebp - 0x1f0]
push ecx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea edx, [ebp - 0x1ac]
push edx
lea ecx, [ebp - 0x1e4]
mov dword [ebp - 0x1ac], ebx
call fcn.0043bb90
push 0x491a28
lea eax, [ebp - 0x1e4]
push eax
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea ecx, [ebp - 0x1c4]
push ecx
lea ecx, [ebp - 0x208]
mov dword [ebp - 0x1c4], ebx
call fcn.0043bb90
push 0x491a28
lea edx, [ebp - 0x208]
push edx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x220]
mov dword [ebp - 0x1b4], ebx
call fcn.0043bb90
push 0x491a28
lea ecx, [ebp - 0x220]
push ecx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
lea edx, [ebp - 0x1a0]
push edx
lea ecx, [ebp - 0x238]
mov dword [ebp - 0x1a0], ebx
call fcn.0043bb90
push 0x491a28
lea eax, [ebp - 0x238]
push eax
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.004459f0
int3