Function at 0x448940
Capabilities:
Check for time delay via gettickcount
Check http status code
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xfc
mov eax, dword [ebp + 0x10]
test eax, eax
push ebx
push esi
mov esi, ecx
lea ecx, [esp + 0x48]
cmovne ecx, eax
mov dword [esp + 0xc], esi
mov eax, dword [0x4e4788]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], eax
mov dword [ecx], 0
push edi
test esi, esi
je case.0x448ad4.4
mov edi, dword [esp + 0x4c]
mov ebx, dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, dword [0x4e4788]
sub ecx, dword [0x4ea5ac]
cmp ecx, dword [eax + 0x5c]
jbe 0x4489cd
push 0
push 0
push 0
push 0
lea eax, [esp + 0xfc]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x4489c2
mov edx, 1
or ecx, 0xffffffff
call fcn.004015e0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4ea5ac], eax
mov ecx, dword [esp + 0x18]
cmp byte [ecx + 0x53], 0
jne 0x4489fd
cmp byte [ecx + 0x96], 0
jne 0x4489fd
inc dword [ecx + 0x40]
mov eax, dword [0x4ea5a4]
cmp dword [ecx + 0x40], eax
jle 0x4489fd
cmp eax, 0xffffffff
jle 0x4489fd
mov byte [ecx + 0x53], 1
mov dword [ecx + 0x5c], 5
cmp byte [ecx + 0x50], 0
je 0x448a2d
mov esi, ecx
nop word [eax + eax]
mov edx, 1
mov ecx, 0x8000012f
call fcn.004015e0
cmp byte [esi + 0x50], 0
jne 0x448a10
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov dword [0x4ea504], esi
cmp byte [ecx + 0x9a], 0
je 0x448a74
mov eax, dword [0x4e9c88]
mov dword [eax*4 + 0x4e9648], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4e9c88]
mov dword [ecx*4 + 0x4e9008], eax
inc ecx
mov dword [0x4e9c88], ecx
cmp ecx, 0x190
jl 0x448a74
mov dword [0x4e9c88], 0
cmp dword [0x4e9e48], 0xffffffff
je 0x448a88
cmp byte [esi], 0x10
je 0x448a88
push esi
call fcn.00407e8e
mov cl, byte [esi]
cmp cl, 1
je 0x448abe
cmp cl, 0xf
jb 0x448a99
cmp cl, 0x13
jbe 0x448abe
cmp cl, 0x16
jb 0x448aa3
cmp cl, 0x1b
jbe 0x448abe
xor eax, eax
cmp cl, 0x15
mov ecx, esi
cmove eax, ebx
push eax
call fcn.004607f0
mov edi, eax
cmp edi, 1
jne 0x449ade
mov bl, byte [esi]
movzx eax, bl
dec eax
cmp eax, 0x1a
ja case.default.0x448ad4
movzx eax, byte [eax + 0x449ed0]
jmp dword [eax*4 + 0x449e8c]
mov eax, dword [esi + 8]
cmp byte [eax], 1
jne 0x448af1
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x448af1
call fcn.00453a60
jmp 0x448afc
mov ecx, dword [0x4e9c98]
call fcn.004539d0
test eax, eax
je 0x448b83
mov eax, dword [esi + 0x14]
mov ebx, dword [ebp + 0xc]
cmp byte [eax], 3
jne 0x448b2f
nop
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [eax + 0x14]
push ebx
push 2
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x448b10
jmp 0x448b44
lea ecx, [esp + 0x14]
push ecx
push ebx
push 3
mov ecx, eax
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
cmp ecx, esi
je 0x448983
cmp dword [ebp + 8], 3
je 0x449ad8
cmp edi, 1
jne 0x449ad8
test ecx, ecx
jne 0x44953d
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
cmp byte [esi], 9
jne case.default.0x448ad4
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
cmp byte [esi], 9
jne 0x448bfb
mov eax, dword [esi + 0x14]
mov ebx, dword [ebp + 0xc]
cmp byte [eax], 3
jne 0x448bbf
nop word [eax + eax]
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [eax + 0x14]
push ebx
push 2
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x448ba0
jmp 0x448bd4
lea ecx, [esp + 0x14]
push ecx
push ebx
push 3
mov ecx, eax
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
cmp dword [ebp + 8], 3
je 0x449ad8
cmp edi, 1
jne 0x449ad8
test ecx, ecx
jne 0x44953d
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
cmp dword [ebp + 8], 3
jne case.default.0x448ad4
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x18]
test eax, eax
jne 0x448c2b
push 1
mov ecx, esi
call fcn.00450ff0
test eax, eax
je 0x449223
cmp dword [ebp + 8], 3
lea ecx, [eax + 4]
je 0x449ae9
mov edx, dword [ecx]
mov eax, dword [esi + 0x1c]
cmp eax, dword [edx + 0x1c]
jne 0x449ae9
mov esi, edx
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
cmp bl, 0xb
je 0x448c79
cmp bl, 0xc
jne 0x448c8d
mov ecx, dword [0x4e9c98]
xor edx, edx
push 0
call fcn.00438470
add esp, 4
mov dword [esp + 0x60], eax
test eax, eax
je 0x449aff
mov ebx, dword [esp + 0x10]
cmp byte [ebx + 1], 1
ja 0x448c93
mov dword [esp + 0x50], 1
jmp 0x448cac
mov ebx, dword [esp + 0x10]
jmp 0x448cac
mov esi, dword [0x4e9c9c]
mov ecx, esi
call fcn.0041fe90
mov dword [esp + 0x50], eax
test eax, eax
je 0x449b94
mov dword [esp + 0x14], 0
mov edx, dword [ebx + 0x18]
mov dword [esp + 0x1c], edx
cmp byte [edx], 0x11
jne 0x448ccf
mov ecx, edx
mov dword [esp + 0x20], edx
mov edx, dword [edx + 0x14]
mov dword [esp + 0x1c], edx
jmp 0x448cd5
xor ecx, ecx
mov dword [esp + 0x20], ecx
cmp byte [ebx], 0xf
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x54], eax
mov eax, esi
mov eax, dword [eax + 8]
mov dword [esp + 0x68], eax
mov eax, esi
mov eax, dword [eax + 0xc]
mov dword [esp + 0x6c], eax
mov eax, esi
mov eax, dword [eax + 0x10]
mov dword [esp + 0x5c], eax
mov eax, esi
mov esi, dword [0x4e9c9c]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x34], eax
je 0x448d2a
mov eax, dword [esp + 0x18]
mov dword [eax], 1
mov dword [eax + 4], 0
movzx eax, byte [ebx]
add eax, 0xfffffff6
cmp eax, 6
ja case.default.0x448d39
jmp dword [eax*4 + 0x449eec]
cmp byte [ebx + 1], 0
jbe 0x448d7a
mov eax, dword [ebx + 8]
cmp byte [eax + 1], 0
jne 0x448d65
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x448d65
call fcn.00453d00
mov ecx, eax
xor al, al
mov dword [esp + 0x40], ecx
jmp 0x448d91
mov ecx, dword [0x4e9c98]
call fcn.00481ff0
mov ecx, eax
mov dword [esp + 0x40], eax
xor al, al
jmp 0x448d91
xorps xmm0, xmm0
mov al, 1
movlpd qword [esp + 0x40], xmm0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x40], ecx
mov edi, dword [0x4e4788]
mov dword [esp + 0x28], edx
mov byte [esp + 0x2f], al
mov dword [esp + 0x10], 4
mov dword [esp + 0x24], 0
nop
test al, al
jne 0x448dbf
cmp dword [edi + 4], edx
jg 0x448e16
jl 0x448dbf
cmp dword [edi], ecx
ja 0x448e16
mov ecx, dword [ebx + 0x14]
cmp byte [ecx], 3
jne 0x448dea
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0xc]
push 2
call fcn.00448940
mov ecx, dword [ebx + 0x14]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], eax
cmp edx, ecx
je 0x448dc7
jmp 0x448e01
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0xc]
push 3
call fcn.00448940
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], eax
mov esi, eax
mov ecx, eax
test edx, edx
je 0x448e1f
cmp eax, 6
jne 0x448e12
cmp edx, ebx
je 0x448e24
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x10]
jmp 0x449121
cmp ecx, 6
jne 0x448e2e
mov dword [esp + 0x10], 1
jmp 0x448e33
cmp esi, 1
jne 0x448e16
mov eax, dword [esp + 0x20]
test eax, eax
je 0x448e4b
lea ecx, [esp + 0x10]
push ecx
mov ecx, eax
call fcn.0044a610
test al, al
jne 0x448e16
add dword [edi], 1
mov al, byte [esp + 0x2f]
adc dword [edi + 4], 0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x28]
jmp 0x448db0
mov esi, dword [0x4e4788]
mov edi, 4
mov dword [esp + 0x24], 0
nop word [eax + eax]
cmp dword [0x4e9e48], 0xffffffff
mov dword [0x4ea504], ebx
je 0x448e95
push ebx
call fcn.00407e8e
push 0
mov ecx, ebx
call fcn.004607f0
cmp eax, 1
jne 0x44911f
mov ecx, dword [0x4e9c98]
call fcn.004539d0
test eax, eax
je 0x449121
mov ecx, dword [ebx + 0x14]
cmp byte [ecx], 3
jne 0x448ee3
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0xc]
push 2
call fcn.00448940
mov ecx, dword [ebx + 0x14]
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, ecx
je 0x448ec2
jmp 0x448ef8
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0xc]
push 3
call fcn.00448940
mov edi, eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x448f0e
cmp edi, 6
jne 0x448f05
cmp eax, ebx
je 0x448f13
mov dword [esp + 0x14], eax
jmp 0x449121
cmp edi, 6
jne 0x448f1a
mov edi, 1
jmp 0x448f23
cmp edi, 1
jne 0x449121
cmp byte [esi + 0x9a], 0
je 0x448f64
mov eax, dword [0x4e9c88]
mov dword [eax*4 + 0x4e9648], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4e9c88]
mov dword [ecx*4 + 0x4e9008], eax
inc ecx
mov dword [0x4e9c88], ecx
cmp ecx, 0x190
jl 0x448f64
mov dword [0x4e9c88], 0
add dword [esi], 1
adc dword [esi + 4], 0
jmp 0x448e80
push ecx
lea eax, [esp + 0x18]
mov ecx, ebx
push eax
push dword [ebp + 0xc]
call fcn.0044a6b0
jmp 0x44911f
push 0x4d8c38
push esi
call fcn.0049f2c1
add esp, 8
mov ecx, ebx
test eax, eax
lea eax, [esp + 0x14]
push dword [esp + 0x20]
push eax
push dword [ebp + 0xc]
je 0x448faf
call fcn.0044b4b0
jmp 0x44911f
call fcn.0044b850
jmp 0x44911f
push esi
push dword [0x4e9c98]
lea eax, [esp + 0x1c]
push ecx
push eax
push dword [ebp + 0xc]
mov ecx, ebx
call fcn.0044bbc0
jmp 0x44911f
mov esi, dword [0x4e9c98]
push 0x2047c
mov dword [esp + 0x2c], 4
call fcn.0049b9c6
add esp, 4
mov ebx, eax
lea eax, [esp + 0x28]
mov dword [esp + 0x40], ebx
push eax
push ebx
push esi
mov dword [ebx + 0x20460], 0
mov dword [ebx + 0x20470], 0
call fcn.0044aab0
test al, al
je 0x449047
mov ecx, dword [esp + 0x50]
mov eax, ecx
shr eax, 2
and ecx, 0xfffffffb
push ebx
and al, 1
movzx eax, al
push eax
push ecx
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0xc]
call fcn.0044aca0
mov edi, eax
jmp 0x44904b
mov edi, dword [esp + 0x28]
cmp dword [ebx + 0x20470], 0
je 0x449062
push dword [ebx + 0x2045c]
call fcn.0049f3c2
add esp, 4
push dword [ebx + 0x20460]
call fcn.0049f3c2
add esp, 4
push 0x2047c
push ebx
call fcn.0049b9b8
mov ebx, dword [esp + 0x18]
add esp, 8
jmp 0x449121
mov ecx, dword [0x4e9c98]
lea eax, [esp + 0x3f]
push eax
lea edx, [esp + 0x68]
call fcn.00438470
mov esi, eax
add esp, 4
test esi, esi
je 0x4490e5
push dword [esp + 0x64]
mov ecx, dword [esp + 0x54]
mov eax, ecx
push esi
push dword [esp + 0x68]
shr eax, 2
and ecx, 0xfffffffb
and al, 1
movzx eax, al
push eax
push ecx
push dword [esp + 0x34]
lea eax, [esp + 0x2c]
mov ecx, ebx
push eax
push dword [ebp + 0xc]
call fcn.0044b060
cmp byte [esp + 0x3f], 0
mov edi, eax
je 0x449121
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x449121
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0xa
lea ecx, [esp + 0xd8]
push ecx
push eax
call fcn.004a3eb5
add esp, 0xc
lea eax, [esp + 0xd4]
mov ecx, 0x4e9ec0
push dword [0x4e9d94]
push 0
push 9
push 0x4cee90
push eax
call fcn.0040c990
mov edi, eax
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x58]
mov dword [ecx], eax
mov eax, dword [esp + 0x54]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x5c]
mov dword [ecx + 0x10], eax
mov eax, dword [esp + 0x34]
mov dword [ecx + 0x14], eax
test edi, edi
je 0x449ade
cmp edi, 7
je 0x449ade
cmp edi, 8
je 0x449ade
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x44918b
mov eax, dword [ecx + 0x1c]
cmp eax, dword [ebx + 0x1c]
jne 0x449b7f
mov esi, ecx
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
cmp byte [edx], 9
jne 0x4491a4
cmp edi, 4
jne 0x4491a1
mov esi, dword [edx + 0x14]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov edx, dword [edx + 0x18]
cmp dword [ebp + 8], 3
je case.0x448ad4.4
mov esi, edx
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov esi, dword [edx + 0x30]
mov ecx, dword [edx + 0x34]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x34], esi
mov dword [edx + 0x30], 0
cmp bl, 0x17
jne 0x44922e
mov eax, ecx
or eax, 0x10
mov dword [edx + 0x34], eax
mov eax, dword [edi + 0xc]
test eax, eax
je 0x449241
mov ecx, dword [eax]
test ecx, ecx
je 0x449241
push esi
call fcn.00484460
test eax, eax
jne 0x449241
cmp dword [esi + 8], 5
jne 0x449208
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x449218
push eax
call fcn.0049f3c2
add esp, 4
push 0x20
push esi
call fcn.0049b9b8
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [edi + 0x18]
cmp byte [eax], 0x18
je 0x449241
mov eax, ecx
and eax, 0xffffffef
or eax, 2
mov dword [edx + 0x34], eax
mov dword [esp + 0x14], 0
mov eax, dword [edi + 0x14]
cmp byte [eax], 3
jne 0x44927a
mov esi, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push dword [ebp + 0xc]
mov ecx, dword [eax + 0x14]
push 2
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x449255
mov esi, dword [esp + 0x34]
jmp 0x449291
lea ecx, [esp + 0x14]
push ecx
push dword [ebp + 0xc]
mov ecx, eax
push 3
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 0x34]
shr edx, 1
and edx, 0xffffff01
mov dword [esp + 0x40], edx
test esi, esi
je 0x4492f0
test edi, edi
jne 0x4492bd
mov edx, eax
cmp dword [edx + 0x30], edi
jne 0x4492bd
mov dword [edx + 0x30], esi
mov byte [esp + 0x40], 1
jmp 0x4492f2
cmp dword [esi + 8], 5
jne 0x4492cb
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4492db
push eax
call fcn.0049f3c2
add esp, 4
push 0x20
push esi
call fcn.0049b9b8
mov ecx, dword [esp + 0x1c]
add esp, 8
mov edx, dword [esp + 0x18]
jmp 0x4492f2
mov edx, eax
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x5c]
mov dword [edx + 0x34], eax
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
mov al, byte [esi]
cmp bl, 0x16
jne 0x449432
cmp al, 0x17
jne 0x4493cd
mov eax, dword [edx + 0x30]
mov dword [esp + 0x34], eax
test eax, eax
je 0x449367
mov ebx, dword [esi + 0xc]
test ebx, ebx
je 0x4493b0
mov ecx, dword [ebx + 8]
test ecx, ecx
je 0x4493b0
xor esi, esi
test ecx, ecx
jle 0x4493c7
nop
mov edx, dword [ebx + 4]
mov ecx, eax
mov edx, dword [edx + esi*4]
call fcn.0047cec0
test al, al
jne 0x449ac7
mov eax, dword [esp + 0x34]
inc esi
cmp esi, dword [ebx + 8]
jl 0x449340
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
cmp byte [esi], 0x17
je 0x449317
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
cmp dword [edx + 0x30], 0
mov esi, dword [esp + 0x10]
jne 0x44942e
mov al, byte [esi]
cmp al, 9
jne 0x449452
cmp edi, 1
jne 0x44942e
test ecx, ecx
jne 0x44942e
mov esi, dword [esi + 0x14]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov edx, dword [0x4e9d98]
mov ecx, eax
call fcn.0047cec0
test al, al
jne case.default.0x448ad4
jmp 0x449363
mov esi, dword [esp + 0x10]
jmp 0x449367
mov esi, dword [edx + 0x30]
test esi, esi
je 0x44937b
cmp al, 0x18
je 0x44937b
mov edx, dword [0x4e9d98]
mov ecx, esi
call fcn.0047cec0
test al, al
je 0x449373
mov ebx, dword [esp + 0x18]
mov esi, dword [ebx + 0x30]
cmp dword [esi + 8], 5
jne 0x4493fe
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x44940e
push eax
call fcn.0049f3c2
add esp, 4
push 0x20
push dword [ebx + 0x30]
call fcn.0049b9b8
mov edx, ebx
add esp, 8
mov edi, 1
mov dword [edx + 0x30], 0
jmp 0x449377
mov al, byte [esi]
jmp 0x449443
cmp al, 0x17
jne 0x449443
mov esi, dword [esi + 0x18]
mov al, byte [esi]
cmp al, 0x17
je 0x449436
mov dword [esp + 0x10], esi
cmp al, 9
jne 0x449452
mov eax, dword [esi + 0x18]
mov esi, eax
mov dword [esp + 0x10], esi
mov al, byte [eax]
cmp al, 0x18
jne 0x44950b
cmp edi, 1
jne 0x449467
test ecx, ecx
je case.default.0x448ad4
mov eax, dword [0x4e9c94]
mov esi, dword [edx + 0x30]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [0x4e9c90]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x4c]
push eax
push 0
push 3
mov dword [edx + 0x30], 0
mov dword [0x4e9c94], 0
mov dword [0x4e9c90], 0
call fcn.00448940
cmp dword [esp + 0x28], 0
mov ebx, eax
je 0x4494e8
mov eax, dword [0x4e9c94]
test eax, eax
je 0x4494d6
push eax
call fcn.0049f3c2
add esp, 4
cmp dword [0x4e9c90], 0x400000
jbe 0x4494d6
dec dword [0x4e9c8c]
mov eax, dword [esp + 0x28]
mov dword [0x4e9c94], eax
mov eax, dword [esp + 0x34]
mov dword [0x4e9c90], eax
cmp ebx, 1
jne 0x449c0f
cmp dword [esp + 0x4c], 0
jne 0x449c0f
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [edx + 0x30], esi
mov esi, dword [esp + 0x10]
cmp dword [edx + 0x30], 0
je 0x449522
cmp byte [esp + 0x40], 0
je 0x449522
test byte [edx + 0x34], 2
je 0x449ccc
cmp dword [ebp + 8], 3
je 0x449ad8
cmp edi, 1
jne 0x449ad8
test ecx, ecx
je case.default.0x448ad4
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x449aeb
mov esi, ecx
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov eax, dword [0x4e9c94]
xor ebx, ebx
mov dword [esp + 0x38], eax
mov eax, dword [0x4e9c90]
mov dword [esp + 0x84], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], eax
mov dword [0x4e9c94], ebx
mov dword [0x4e9c90], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x28], 4
cmp byte [esi + 1], bl
jne 0x4495a4
mov dword [esp + 0x78], 0x49
lea edi, [ebx + 1]
jmp 0x44972b
lea eax, [esp + 0x20]
mov ecx, esi
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x78]
push eax
push 0
call fcn.0045f720
mov edi, eax
cmp edi, 1
jne 0x44991f
cmp byte [esi + 1], 2
jne 0x4496db
lea eax, [esp + 0x34]
mov dword [esp + 0xc4], ebx
push eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x38], ebx
push eax
lea eax, [esp + 0xb8]
mov ecx, esi
push eax
push edi
call fcn.0045f720
mov edi, eax
cmp edi, 1
jne 0x44967e
lea ecx, [esp + 0xb0]
call fcn.00454260
mov dword [esp + 0x28], eax
cmp eax, 3
jl 0x449679
mov ecx, 0x4e9ec0
cmp byte [0x4ea594], bl
je 0x44963e
push 0
push esi
push 0
push 0x4cee90
push str.Parameter_2_invalid.
call fcn.0040c990
mov edi, eax
jmp 0x44967e
cmp byte [0x4ea597], bl
je 0x449661
push dword [esi + 4]
movzx eax, word [esi + 2]
push eax
push 0x4cee90
push str.Parameter_2_invalid.
call fcn.0040c890
xor edi, edi
jmp 0x44967e
push 0
push esi
push 0x4cee90
push 0
push str.Parameter_2_invalid.
call fcn.0040d580
mov edi, eax
jmp 0x44967e
mov edi, 1
cmp dword [esp + 0xb8], 5
jne 0x449695
mov eax, dword [esp + 0xb0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x4496a9
push eax
call fcn.0049f3c2
add esp, 4
cmp edi, 1
jne 0x44991f
cmp dword [esp + 0x28], 4
je 0x4496db
cmp dword [esp + 0x78], 5
jne 0x449704
lea edx, [esp + 0x70]
mov ecx, 0x4d0bf4
call fcn.0040df20
mov edi, eax
cmp edi, 1
jne 0x44991f
jmp 0x449704
mov eax, dword [esp + 0x78]
test eax, eax
je 0x4496ea
cmp eax, 5
je 0x449704
jmp 0x449700
push ecx
mov ecx, dword [esp + 0x74]
mov edx, 1
push 1
push 0
call fcn.00481650
add esp, 0xc
mov dword [esp + 0x40], eax
cmp dword [esp + 0x78], ebx
jne 0x44972b
mov ecx, dword [esp + 0x38]
cmp dword [esp + 0x70], ecx
jne 0x44972b
mov eax, dword [esp + 0x20]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x20], ebx
mov eax, dword [esi + 0x14]
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x24], ebx
test ebx, ebx
je 0x4498bc
nop dword [eax]
cmp byte [ebx], 0x1b
jne 0x4498b8
movzx eax, byte [ebx + 1]
mov dword [esp + 0x54], eax
test eax, eax
jne 0x449761
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x1c], ecx
jmp 0x4498a9
xor esi, esi
test eax, eax
je 0x4498a9
nop dword [eax + eax]
lea eax, [esp + 0x20]
mov ecx, ebx
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x98]
push eax
push esi
call fcn.0045f720
mov edi, eax
cmp edi, 1
jne 0x44989b
cmp dword [esp + 0x78], 0x49
je 0x4497d6
push dword [esp + 0x28]
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x48]
lea eax, [esp + 0x7c]
push eax
call fcn.00449f20
mov edi, eax
cmp edi, 3
je 0x4497c9
cmp edi, 4
jne 0x44989b
cmp edi, 3
sete bl
mov edi, 1
jmp 0x449867
mov eax, dword [esp + 0x98]
cmp eax, 4
ja case.0x4497e2.3
jmp dword [eax*4 + 0x449f08]
mov eax, dword [esp + 0x90]
or eax, dword [esp + 0x94]
je 0x449851
mov eax, 1
jmp 0x449862
mov ecx, dword [esp + 0x90]
call fcn.00453a60
jmp 0x449862
movsd xmm0, qword [esp + 0x90]
xorps xmm1, xmm1
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x449851
mov eax, 1
jmp 0x449862
mov ecx, dword [esp + 0x90]
call fcn.004539d0
test eax, eax
jne 0x4497f9
cmp dword [esp + 0x94], eax
je 0x449851
mov eax, dword [esp + 0x90]
cmp word [eax], 0
je 0x4497f9
xor eax, eax
jmp 0x449862
xor eax, eax
cmp dword [esp + 0x98], 5
sete al
test eax, eax
setne bl
cmp dword [esp + 0x98], 5
jne 0x44987e
mov eax, dword [esp + 0x90]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
test bl, bl
mov ebx, dword [esp + 0x24]
jne 0x449892
inc esi
cmp esi, dword [esp + 0x54]
jge 0x4498a9
jmp 0x449770
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x1c], eax
jmp 0x4498a3
mov dword [esp + 0x1c], 0
cmp esi, dword [esp + 0x54]
jl 0x4498b8
mov ebx, dword [ebx + 0x18]
mov dword [esp + 0x24], ebx
test ebx, ebx
jne 0x449740
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x58]
test ebx, ebx
je 0x4498f6
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x4498e5
push ecx
call fcn.0049f3c2
add esp, 4
cmp dword [esp + 0x20], 0x400000
jbe 0x4498e5
dec dword [0x4e9c8c]
mov eax, dword [esp + 0x84]
mov dword [esp + 0x38], eax
mov dword [esp + 0x20], ebx
jmp 0x44991b
cmp dword [esp + 0x78], 5
jne 0x449907
mov eax, dword [esp + 0x70]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esp + 0x84]
test eax, eax
je 0x44991b
push eax
call fcn.0049f3c2
add esp, 4
mov ebx, dword [esp + 0x1c]
cmp dword [esp + 0x38], 0
je 0x44995c
mov eax, dword [0x4e9c94]
test eax, eax
je 0x44994a
push eax
call fcn.0049f3c2
add esp, 4
cmp dword [0x4e9c90], 0x400000
jbe 0x44994a
dec dword [0x4e9c8c]
mov eax, dword [esp + 0x38]
mov dword [0x4e9c94], eax
mov eax, dword [esp + 0x20]
mov dword [0x4e9c90], eax
test ebx, ebx
je 0x449979
lea eax, [esp + 0x14]
mov ecx, ebx
push eax
push dword [ebp + 0xc]
push 2
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
jmp 0x44997f
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 1
jne 0x449ad8
cmp dword [ebp + 8], 3
je 0x449ad8
test ecx, ecx
je 0x4499a1
jmp 0x44953d
cmp dword [esi + 0xc], 0
je 0x4499ad
mov esi, dword [esi + 0x18]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov ebx, dword [ebp + 0xc]
lea eax, [esp + 0x14]
mov ecx, dword [esi + 0x14]
push eax
push ebx
push 2
call fcn.00448940
mov ecx, dword [esp + 0x14]
mov edi, eax
cmp ecx, esi
je 0x448983
cmp dword [ebp + 8], 3
je 0x449ad8
cmp edi, 1
jne 0x449ad8
test ecx, ecx
je 0x4499a1
mov eax, dword [esi + 0x1c]
cmp eax, dword [ecx + 0x1c]
jmp 0x449543
mov edi, dword [esi + 8]
cmp byte [edi + 0x1d], 0
jne 0x449a3a
mov edx, dword [edi + 0x2c]
cmp dword [edx + 8], 4
jne 0x449a2f
mov esi, dword [edx]
cmp byte [esi + 0x17], 0
jne 0x449a14
mov ecx, dword [esi + 0xc]
call fcn.004053c0
jmp 0x449a16
mov eax, esi
test byte [eax + 0x15], 2
je 0x449a2f
cmp dword [edx + 4], 0
jne 0x449a2f
push esi
mov ecx, 0x4e9ec0
call fcn.0040e950
jmp 0x449a43
mov ecx, dword [edi + 0xc]
push edx
call fcn.00484460
jmp 0x449a43
push 0
mov ecx, esi
call fcn.004607f0
mov edi, eax
cmp edi, 1
jne 0x449ade
cmp dword [ebp + 8], 3
je 0x449ade
mov esi, dword [esp + 0x10]
mov esi, dword [esi + 0x14]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
cmp edi, 1
jne 0x449ade
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x449a80
cmp dword [ecx + 0x28], esi
jne 0x449a80
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x28], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x449aa2
nop word [eax + eax]
cmp dword [ecx + 0x18], esi
jne 0x449aa2
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x18], eax
mov ecx, dword [ecx + 0x1c]
test ecx, ecx
jne 0x449a90
cmp dword [ebp + 8], 3
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
je case.0x448ad4.4
mov esi, dword [esi + 0x14]
mov dword [esp + 0x10], esi
jmp case.default.0x448ad4
mov esi, dword [esp + 0x10]
test esi, esi
je case.0x448ad4.4
jmp case.0x448ad4.6
mov edx, dword [esp + 0x30]
mov dword [edx], ecx
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ecx]
mov edx, dword [esp + 0x30]
mov eax, 1
mov dword [edx], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x4e9c98]
mov ecx, 0x4cee90
test eax, eax
cmovne ecx, eax
cmp byte [0x4ea594], 0
je 0x449b35
push 0
push esi
push 0
push ecx
push str.Parameter_1_invalid.
mov ecx, 0x4e9ec0
call fcn.0040c990
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [0x4ea597], 0
je 0x449b61
push dword [esi + 4]
movzx eax, word [esi + 2]
push eax
push ecx
push str.Parameter_1_invalid.
mov ecx, 0x4e9ec0
call fcn.0040c890
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push esi
push ecx
push 0
push str.Parameter_1_invalid.
mov ecx, 0x4e9ec0
call fcn.0040d580
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x14]
mov dword [edx], eax
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test esi, esi
mov ecx, 0x4cee90
cmovne ecx, esi
cmp byte [0x4ea594], 0
je 0x449bc5
push 0
push ebx
push 0
push ecx
push str.Parameter_2_invalid.
mov ecx, 0x4e9ec0
call fcn.0040c990
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [0x4ea597], 0
je 0x449bf1
push dword [ebx + 4]
movzx eax, word [ebx + 2]
push eax
push ecx
push str.Parameter_2_invalid.
mov ecx, 0x4e9ec0
call fcn.0040c890
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push ebx
push ecx
push 0
push str.Parameter_2_invalid.
mov ecx, 0x4e9ec0
call fcn.0040d580
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test esi, esi
je 0x449c3c
cmp dword [esi + 8], 5
jne 0x449c21
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x449c31
push eax
call fcn.0049f3c2
add esp, 4
push 0x20
push esi
call fcn.0049b9b8
add esp, 8
test ebx, ebx
je 0x449cc1
cmp ebx, 8
je 0x449cc1
cmp byte [0x4ea594], 0
mov ecx, 0x4e9ec0
mov eax, dword [0x4ea504]
je 0x449c79
push 0
push eax
push 0
push 0x4cee90
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.0040c990
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [0x4ea597], 0
je 0x449ca4
push dword [eax + 4]
movzx eax, word [eax + 2]
push eax
push 0x4cee90
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.0040c890
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push eax
push 0x4cee90
push 0
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.0040d580
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push dword [0x4ea504]
mov ecx, 0x4e9ec0
call fcn.0040e290
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 1
je case.0x448ad4.4
mov eax, 7
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x18]
test eax, eax
je 0x449d1a
mov edx, dword [esp + 0x30]
mov dword [edx], eax
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, 5
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esi + 0x18]
test eax, eax
je 0x449d35
mov edx, dword [esp + 0x30]
mov dword [edx], eax
mov eax, 6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [esi + 1], 0
jne 0x449d79
mov eax, dword [esp + 0x18]
test byte [eax + 0x34], 0x10
jne 0x449223
push 0
push 0
push esi
push 0x4cee90
push str.An_exception_was_thrown.
mov ecx, 0x4e9ec0
call fcn.0040c3f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x20
call fcn.0049b9c6
mov edi, eax
add esp, 4
mov dword [esp + 0x4c], edi
mov ecx, esi
push edi
mov dword [edi + 8], 0
mov dword [edi + 0x14], 0
mov dword [edi + 4], 0xffffffff
call fcn.004607f0
mov esi, eax
cmp esi, 1
je 0x449dc3
push 0x20
push edi
call fcn.0049b9b8
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [edi + 8], 0
jne 0x449e60
cmp dword [edi + 0x14], 0
jne 0x449e60
mov esi, dword [edi + 4]
mov eax, dword [edi]
mov dword [esp + 0x4c], eax
cmp esi, 0xffffffff
jne 0x449dff
mov esi, eax
lea ecx, [esi + 2]
nop word [eax + eax]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x449df0
sub esi, ecx
sar esi, 1
lea ebx, [esi*2 + 2]
push ebx
call fcn.0049f3dd
add esp, 4
mov dword [edi + 0x14], eax
test eax, eax
je 0x449e34
push ebx
push dword [esp + 0x50]
mov dword [edi + 8], 0
push eax
mov dword [edi + 4], esi
mov dword [edi], eax
call fcn.0049cf00
add esp, 0xc
test eax, eax
jne 0x449e60
push 0x20
push edi
call fcn.0049b9b8
push 0
push 0
xorps xmm3, xmm3
mov edx, 0x10000
mov ecx, str.Out_of_memory.__The_current_thread_will_exit.
call fcn.00486cb0
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esp + 0x10]
push 0
push edi
push dword [esp + 0x20]
call fcn.0040c600
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
pop edi
pop esi
mov eax, 8
pop ebx
mov esp, ebp
pop ebp
ret 0xc