Function at 0x49fcd0
Capabilities:
Check http status code
Query remote server for available data
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
lea ebp, [esp - 0x54]
sub esp, 0x2dc
mov eax, dword [0x4ce724]
xor eax, ebp
mov dword [ebp + 0x50], eax
mov eax, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x70]
mov edx, dword [ebp + 0x74]
mov dword [ebp - 0x288], eax
mov eax, dword [ebp + 0x7c]
push ebx
mov ebx, dword [ebp + 0x6c]
mov dword [ebp - 0x254], eax
xor eax, eax
push esi
mov esi, dword [ebp + 0x68]
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x274], eax
mov byte [ebp - 0x229], al
mov al, byte [ebp + 0x78]
push edi
mov edi, dword [ebp + 0x5c]
mov dword [ebp - 0x278], edi
mov dword [ebp - 0x270], ebx
mov dword [ebp - 0x280], ecx
mov dword [ebp - 0x27c], edx
mov dword [ebp - 0x284], 0xffffffff
cmp al, 0xff
jne 0x49fd52
push 0
push 0
call fcn.0049f270
add esp, 8
mov byte [ebp - 0x231], al
test edi, edi
je 0x4a0a77
cmp dword [ebp + 0x64], 0x24
jbe 0x4a0a77
test esi, esi
je 0x4a0a77
test ebx, ebx
je 0x4a0a77
cmp dword [ebp - 0x280], 0
je 0x4a0a77
cmp dword [ebp - 0x27c], 0
je 0x4a0a77
cmp byte [esi], 0
jne 0x49fda2
cmp byte [ebx], 0
je 0x4a0a81
lea ecx, [ebp - 0x228]
call fcn.004a5ce0
movzx ecx, byte [esi]
push ecx
lea ecx, [ebp - 0x228]
call fcn.004a5d10
movzx edx, byte [ebx]
push edx
lea ecx, [ebp - 0x228]
call fcn.004a5d40
lea eax, [ebp - 0x229]
push eax
push edi
lea ecx, [ebp - 0x228]
call fcn.004a5d60
cmp byte [ebp - 0x229], 0
mov dword [ebp - 0x230], eax
jne 0x4a0a81
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor esi, esi
push eax
mov dword [ebp - 0x26c], eax
mov dword [ebp - 0x248], esi
xor edi, edi
call fcn.0046d713
add esp, 4
call fcn.0046d725
mov ecx, eax
mov eax, 0x11
cdq
mov ebx, eax
xor ebx, edx
sub ebx, edx
mov eax, ecx
cdq
idiv ebx
add edx, 8
mov dword [ebp - 0x240], edx
je 0x49fed2
mov ebx, edx
lea ebx, [ebx + ebx + 2]
push ebx
call fcn.00468c27
mov edi, eax
add esp, 4
test edi, edi
je 0x49ff48
push ebx
push esi
push edi
call fcn.00468010
add esp, 0xc
mov dword [ebp - 0x258], esi
cmp dword [ebp - 0x240], esi
jbe 0x49fed2
lea esp, [esp]
call fcn.0046d725
mov esi, eax
call fcn.0046d725
mov ecx, eax
xor edx, edx
mov eax, esi
mov ebx, 0x1f
div ebx
mov eax, esi
cmp edx, 5
jae 0x49fe9e
xor edx, edx
mov ecx, 0xa
div ecx
add edx, 0x30
jmp 0x49feb3
shl ecx, 5
not ecx
xor edx, edx
and ecx, 0x20
mov esi, 0x1a
div esi
lea edx, [ecx + edx + 0x41]
mov eax, dword [ebp - 0x258]
mov word [edi + eax*2], dx
inc eax
mov dword [ebp - 0x258], eax
cmp eax, dword [ebp - 0x240]
jb 0x49fe70
mov esi, dword [ebp - 0x248]
cmp dword [ebp - 0x240], 0
je 0x49fefe
push 1
call dword [sym.imp.KERNEL32.dll_InitAtomTable]
test eax, eax
je 0x49fef8
push edi
call dword [sym.imp.KERNEL32.dll_AddAtomW]
movzx esi, ax
xor edx, edx
cmp dx, si
jne 0x49fefe
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x49ff0b
push edi
call fcn.00468cf1
add esp, 4
lea ecx, [ebp - 0x228]
mov word [ebp - 0x1bc], si
call fcn.004a5db0
mov esi, eax
inc esi
lea eax, [esi + 8]
cmp eax, 0x400
ja 0x49ff50
call fcn.0046dc70
mov eax, esp
test eax, eax
je 0x49ff3e
mov dword [eax], 0xcccc
add eax, 8
mov edi, eax
mov dword [ebp - 0x258], edi
jmp 0x49ff6e
mov dword [ebp - 0x240], esi
jmp 0x49fefe
push eax
call fcn.00468c27
add esp, 4
test eax, eax
je 0x49ff66
mov dword [eax], 0xdddd
add eax, 8
mov edi, eax
mov dword [ebp - 0x258], eax
test edi, edi
je 0x4a0a5b
push esi
push edi
lea ecx, [ebp - 0x228]
call fcn.004a5dc0
mov dword [ebp - 0x230], eax
test eax, eax
jne 0x4a0a49
mov eax, dword [str.DATA]
mov cx, word [0x4c5e34]
mov dword [ebp + 0x48], eax
lea eax, [ebp + 0x48]
mov word [ebp + 0x4c], cx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x49ffb0
sub eax, edx
add esi, eax
lea eax, [esi + 8]
cmp eax, 0x400
ja 0x49ffd8
call fcn.0046dc70
mov eax, esp
test eax, eax
je 0x49ffee
mov dword [eax], 0xcccc
jmp 0x49ffeb
push eax
call fcn.00468c27
add esp, 4
test eax, eax
je 0x49ffee
mov dword [eax], 0xdddd
add eax, 8
mov dword [ebp - 0x250], eax
test eax, eax
je 0x4a0a18
lea edx, [ebp + 0x48]
push edx
mov ebx, eax
push esi
xor edi, edi
push ebx
mov dword [ebx], edi
call fcn.0046a7ad
mov eax, dword [ebp - 0x258]
push eax
push esi
push ebx
call fcn.0047d7c2
add esp, 0x18
push 0x4ef892
mov dword [ebp - 0x238], edi
mov dword [ebp - 0x23c], edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [eax + eax + 2]
mov eax, esi
call fcn.0046dc70
mov ebx, esp
push edi
push edi
push esi
push ebx
push 0xffffffffffffffff
push 0x4ef892
push edi
push edi
mov byte [ebx], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp word [0x4ef492], di
je 0x4a05dd
cmp byte [ebx], 0
je 0x4a05dd
movzx ecx, word [0x4ef490]
xor eax, eax
push eax
push 3
push 0x4efd12
push 0x4efc92
push ecx
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x244], eax
push 0x4ef492
lea esi, [ebp - 0x268]
lea edi, [ebp - 0x264]
mov eax, str.Avanquest
call fcn.0049f200
add esp, 0x18
mov dword [ebp - 0x230], eax
test eax, eax
jne 0x4a05b3
mov ecx, 0x4c6264
mov eax, 0x4c5db0
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a0106
test dx, dx
je 0x4a0102
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a0106
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a00e0
xor eax, eax
jmp 0x4a010b
sbb eax, eax
sbb eax, 0xffffffff
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x250]
sete dl
lea esi, [eax + 1]
mov dword [ebp - 0x24c], edx
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a0121
sub eax, esi
mov esi, eax
mov dword [ebp - 0x25c], esi
test edx, edx
je 0x4a01f6
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a0140
sub eax, edx
lea edi, [eax + esi + 2]
lea eax, [edi + 8]
cmp eax, 0x400
ja 0x4a016d
call fcn.0046dc70
mov esi, esp
test esi, esi
je 0x4a01e1
mov dword [esi], 0xcccc
add esi, 8
jmp 0x4a0185
push eax
call fcn.00468c27
add esp, 4
test eax, eax
je 0x4a0183
mov dword [eax], 0xdddd
add eax, 8
mov esi, eax
test esi, esi
je 0x4a01e1
mov edx, dword [ebp - 0x250]
push edx
push ebx
push str._s__s
push edi
push esi
call fcn.0046a78f
mov eax, dword [ebp - 0x268]
add esp, 0x14
push 0
push 0x84400100
push 0
push 0
push 0
push esi
push 0x4c6258
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x244], eax
test eax, eax
jne 0x4a01eb
call dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
mov dword [ebp - 0x230], eax
call fcn.0041a740
add esp, 4
jmp 0x4a022c
mov dword [ebp - 0x230], 8
push esi
call fcn.0041a740
add esp, 4
jmp 0x4a022c
mov ecx, dword [ebp - 0x268]
push 0
push 0x84400100
push 0
push 0
push 0
push ebx
push str.POST
push ecx
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x244], eax
test eax, eax
jne 0x4a0239
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 0
jne 0x4a033d
mov esi, dword [ebp - 0x254]
push esi
mov dword [ebp - 0x260], 0
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4a025c
mov dword [ebp - 0x254], esi
jmp 0x4a0268
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x254], eax
cmp dword [ebp - 0x24c], 0
jne 0x4a02b0
mov eax, str.C62T3EC4MHSZBC3NR7P2C99Y6Z9GFJ54MYKVTG2RTY9M5421R44W8TMK5RCH0NBVWHBGCB9MFJUD25ENUS77VYJ7XMZR4PD
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a0280
push 0
sub eax, edx
push 0x80
lea edx, [ebp - 0x38]
push edx
push eax
push str.C62T3EC4MHSZBC3NR7P2C99Y6Z9GFJ54MYKVTG2RTY9M5421R44W8TMK5RCH0NBVWHBGCB9MFJUD25ENUS77VYJ7XMZR4PD
call fcn.004a5960
add esp, 0x14
mov dword [ebp - 0x230], eax
test eax, eax
jne 0x4a033d
mov ebx, dword [ebp - 0x25c]
mov edi, dword [ebp - 0x230]
mov esi, dword [ebp - 0x244]
cmp dword [ebp - 0x24c], 0
je 0x4a02dc
push 0
push 0
push 0
push 0
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
jmp 0x4a02ff
lea eax, [ebp - 0x38]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a02e2
mov ecx, dword [ebp - 0x250]
push ebx
push ecx
sub eax, edx
push eax
lea edx, [ebp - 0x38]
push edx
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x4a030b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test edi, edi
jne 0x4a0327
mov eax, dword [ebp - 0x254]
push edi
push 7
push edi
push esi
push eax
call dword [sym.imp.WININET.dll_InternetErrorDlg]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0x2f00
jne 0x4a0362
test edi, edi
je 0x4a02c2
mov dword [ebp - 0x230], edi
mov ebx, dword [ebp - 0x238]
cmp dword [ebp - 0x244], 0
je 0x4a05b9
mov ecx, dword [ebp - 0x244]
push ecx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x4a05b9
mov dword [ebp - 0x230], edi
test edi, edi
jne 0x4a033d
mov eax, dword [ebp - 0x244]
mov edi, dword [sym.imp.WININET.dll_HttpQueryInfoW]
xor esi, esi
push esi
lea ecx, [ebp - 0x25c]
push ecx
lea edx, [ebp - 0xb8]
push edx
push 0x13
push eax
mov ebx, 0x1f4
mov dword [ebp - 0x25c], 0x80
call edi
test eax, eax
jne 0x4a03ab
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x4a03bc
lea ecx, [ebp - 0xb8]
push ecx
call fcn.0046b23a
add esp, 4
mov ebx, eax
mov dword [ebp - 0x230], esi
mov dword [ebp - 0x248], ebx
test esi, esi
jne 0x4a033d
cmp ebx, 0x12c
jae 0x4a033d
mov ecx, dword [ebp - 0x244]
xor ebx, ebx
push ebx
lea edx, [ebp - 0x254]
push edx
lea eax, [ebp - 0x1b8]
push eax
push 5
push ecx
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x254], 0x100
call edi
test eax, eax
jne 0x4a0416
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x4a042d
lea edx, [ebp - 0x1b8]
push edx
call fcn.0046b23a
add esp, 4
mov ebx, eax
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x230], esi
test esi, esi
jne 0x4a033d
test ebx, ebx
jbe 0x4a0472
mov esi, dword [ebp - 0x24c]
inc esi
push esi
call fcn.00468c27
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4a0463
push esi
push 0
push ebx
call fcn.00468010
add esp, 0xc
jmp 0x4a0478
mov dword [ebp - 0x230], 8
jmp 0x4a053f
mov ebx, dword [ebp - 0x238]
mov edi, dword [ebp - 0x244]
xor esi, esi
mov dword [ebp - 0x238], esi
mov dword [ebp - 0x260], esi
lea esp, [esp]
push 0
push 0
lea eax, [ebp - 0x238]
push eax
push edi
call dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
je 0x4a055e
mov eax, dword [ebp - 0x238]
test eax, eax
je 0x4a055e
cmp dword [ebp - 0x24c], 0
jne 0x4a04e7
test esi, esi
jne 0x4a04d1
inc eax
push eax
call fcn.00468c27
add esp, 4
jmp 0x4a04df
lea ecx, [eax + esi + 1]
push ecx
push ebx
call fcn.0046ee54
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 0x238]
test ebx, ebx
je 0x4a059e
lea edx, [ebp - 0x260]
push edx
push eax
lea eax, [esi + ebx]
push eax
push edi
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x4a058a
mov eax, dword [ebp - 0x260]
test eax, eax
je 0x4a058a
add esi, eax
cmp dword [ebp - 0x24c], 0
jne 0x4a0490
cmp esi, 0xffff
jbe 0x4a0490
mov dword [ebp - 0x23c], esi
mov dword [ebp - 0x230], 0x7a
test ebx, ebx
je 0x4a0343
mov eax, dword [ebp - 0x23c]
test eax, eax
jbe 0x4a0343
mov byte [eax + ebx], 0
jmp 0x4a0343
mov dword [ebp - 0x23c], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x230], eax
cmp eax, 0x12
je 0x4a057e
cmp dword [ebp - 0x238], 0
jne 0x4a053f
mov dword [ebp - 0x230], 0
jmp 0x4a053f
mov dword [ebp - 0x23c], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x230], eax
jmp 0x4a053f
mov dword [ebp - 0x23c], esi
mov dword [ebp - 0x230], 0x4b8
jmp 0x4a0343
mov ebx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x268]
test eax, eax
je 0x4a05ca
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [ebp - 0x264]
test eax, eax
je 0x4a05ed
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x4a05ed
mov ebx, dword [ebp - 0x238]
mov dword [ebp - 0x230], 0x57
mov eax, dword [ebp - 0x230]
xor edi, edi
mov dword [ebp - 0x230], eax
test eax, eax
je 0x4a0632
cmp eax, 0x7a
jne 0x4a0610
mov byte [ebp - 0x229], 0x1e
jmp 0x4a0748
cmp eax, 0x2ee0
jb 0x4a0738
cmp eax, 0x2f8f
ja 0x4a0738
mov byte [ebp - 0x229], 0x20
jmp 0x4a0748
mov eax, dword [ebp - 0x248]
cmp eax, 0x1f4
jb 0x4a064b
mov byte [ebp - 0x229], 0x21
jmp 0x4a0748
cmp eax, 0x194
jne 0x4a065e
mov byte [ebp - 0x229], 0x2e
jmp 0x4a0748
cmp eax, 0x197
jne 0x4a0671
mov byte [ebp - 0x229], 0x2d
jmp 0x4a0748
test ebx, ebx
jne 0x4a06ac
mov al, byte [ebp - 0x231]
neg al
sbb al, al
and al, 0xd
add al, 0x1f
mov byte [ebp - 0x229], al
mov eax, dword [ebp - 0x250]
push eax
call fcn.0041a740
mov edi, dword [ebp - 0x258]
add esp, 4
push edi
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
cmp byte [ebx], 0
je 0x4a0741
mov edx, dword [ebp - 0x23c]
push edx
push ebx
lea ecx, [ebp - 0x228]
call fcn.004a5de0
test eax, eax
je 0x4a06d3
mov edi, 1
jmp 0x4a0748
cmp byte [ebp - 0x231], 0
je 0x4a0738
xor esi, esi
or ecx, 0xffffffff
cmp byte [ebx], 0
je 0x4a072f
mov al, byte [esi + ebx]
cmp al, 0x3c
jne 0x4a06f1
mov ecx, esi
jmp 0x4a0728
cmp ecx, 0xffffffff
jae 0x4a0728
cmp al, 0x3e
jne 0x4a0728
mov eax, esi
sub eax, ecx
add eax, 0xffffffec
cmp eax, 0xb4
ja 0x4a0725
lea ecx, [ecx + ebx + 1]
push 0x4c5de8
mov byte [esi + ebx], 0
call fcn.0049f300
add esp, 4
test eax, eax
jne 0x4a0665
or ecx, 0xffffffff
inc esi
cmp byte [esi + ebx], 0
jne 0x4a06e6
mov byte [ebp - 0x229], 0x23
jmp 0x4a0748
mov byte [ebp - 0x229], 0x1f
jmp 0x4a0748
mov byte [ebp - 0x229], 0x2c
test ebx, ebx
je 0x4a0755
push ebx
call fcn.00468cf1
add esp, 4
test edi, edi
je 0x4a0a29
mov ax, word [ebp - 0x1bc]
movzx ecx, ax
xor edi, edi
mov dword [ebp - 0x25c], ecx
mov dword [ebp - 0x264], 1
test ax, ax
je 0x4a0931
mov edx, dword [ebp - 0x26c]
push edx
mov dword [ebp - 0x23c], edi
mov dword [ebp - 0x248], edi
call fcn.0046d713
mov esi, dword [ebp - 0x240]
mov ebx, esi
add esp, 4
mov dword [ebp - 0x26c], ebx
call fcn.0046d725
cmp esi, edi
jbe 0x4a084a
lea esi, [esi + esi + 2]
push esi
call fcn.00468c27
add esp, 4
mov dword [ebp - 0x23c], eax
test eax, eax
je 0x4a083e
push esi
push edi
push eax
call fcn.00468010
add esp, 0xc
test ebx, ebx
jbe 0x4a084a
mov edi, edi
call fcn.0046d725
mov esi, eax
call fcn.0046d725
mov ecx, eax
xor edx, edx
mov eax, esi
mov ebx, 0x1f
div ebx
mov eax, esi
cmp edx, 5
jae 0x4a080e
xor edx, edx
mov ecx, 0xa
div ecx
add edx, 0x30
jmp 0x4a0823
shl ecx, 5
not ecx
xor edx, edx
and ecx, 0x20
mov esi, 0x1a
div esi
lea edx, [ecx + edx + 0x41]
mov eax, dword [ebp - 0x23c]
mov word [eax + edi*2], dx
inc edi
cmp edi, dword [ebp - 0x240]
jb 0x4a07e0
mov ebx, dword [ebp - 0x26c]
jmp 0x4a084a
xor ebx, ebx
mov dword [ebp - 0x248], 8
mov edi, dword [ebp - 0x248]
test ebx, ebx
je 0x4a09e4
mov ebx, dword [ebp - 0x240]
lea eax, [ebx + ebx + 0xa]
cmp eax, 0x400
ja 0x4a087c
call fcn.0046dc70
mov eax, esp
test eax, eax
je 0x4a0892
mov dword [eax], 0xcccc
jmp 0x4a088f
push eax
call fcn.00468c27
add esp, 4
test eax, eax
je 0x4a0892
mov dword [eax], 0xdddd
add eax, 8
mov esi, eax
test esi, esi
je 0x4a09e4
lea eax, [ebx + 1]
push eax
push eax
push 0
push esi
call fcn.00468010
mov ecx, dword [ebp - 0x25c]
add esp, 0xc
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetAtomNameW]
test eax, eax
jbe 0x4a09d7
mov ecx, dword [ebp - 0x23c]
mov eax, esi
lea ebx, [ebx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4a08f6
test dx, dx
je 0x4a08f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4a08f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4a08d0
xor eax, eax
jmp 0x4a08fb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a0909
mov dword [ebp - 0x264], 0
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x4a091e
push eax
call fcn.00468cf1
add esp, 4
mov eax, dword [ebp - 0x23c]
test eax, eax
je 0x4a0931
push eax
call fcn.00468cf1
add esp, 4
cmp dword [ebp - 0x264], 0
mov dword [ebp - 0x230], edi
je 0x4a0a29
mov ax, word [ebp - 0x220]
mov edx, dword [ebp - 0x224]
movzx esi, ax
mov dword [ebp - 0x284], edx
mov dword [ebp - 0x274], esi
cmp ax, 1
je 0x4a096c
cmp ax, 3
jne 0x4a0986
mov ecx, dword [ebp + 0x64]
mov edx, dword [ebp - 0x278]
lea eax, [ebp - 0x20c]
push eax
push ecx
push edx
call fcn.0046a7ad
add esp, 0xc
cmp si, 2
je 0x4a0996
cmp si, 3
jne 0x4a0a29
mov eax, dword [ebp - 0x288]
test eax, eax
je 0x4a09ee
mov edx, dword [ebp + 0x64]
lea ecx, [ebp - 0x1e4]
push ecx
push edx
push eax
call fcn.0046a7ad
mov eax, dword [ebp - 0x250]
add esp, 0xc
push eax
call fcn.0041a740
mov edi, dword [ebp - 0x258]
add esp, 4
push edi
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x4a0909
mov edi, 8
jmp 0x4a091e
mov eax, dword [ebp - 0x250]
push eax
mov dword [ebp - 0x230], 0x57
call fcn.0041a740
mov edi, dword [ebp - 0x258]
add esp, 4
push edi
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
mov byte [ebp - 0x229], 0x1f
mov dword [ebp - 0x230], 8
mov eax, dword [ebp - 0x250]
push eax
call fcn.0041a740
mov edi, dword [ebp - 0x258]
add esp, 4
push edi
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
push edi
mov byte [ebp - 0x229], 0x22
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
push edi
mov byte [ebp - 0x229], 0x1f
mov dword [ebp - 0x230], 8
call fcn.0041a740
add esp, 4
jmp 0x4a0a81
mov dword [ebp - 0x230], 0x57
mov eax, dword [ebp - 0x280]
test eax, eax
je 0x4a0a93
mov ecx, dword [ebp - 0x284]
mov dword [eax], ecx
mov eax, dword [ebp - 0x27c]
test eax, eax
je 0x4a0aa7
mov dx, word [ebp - 0x274]
mov word [eax], dx
mov eax, dword [ebp - 0x270]
test eax, eax
je 0x4a0ab9
mov cl, byte [ebp - 0x229]
mov byte [eax], cl
mov eax, dword [ebp - 0x230]
lea esp, [ebp - 0x294]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x50]
xor ecx, ebp
call fcn.00467fff
add ebp, 0x54
mov esp, ebp
pop ebp
ret