Function at 0x429869
Capabilities:
Check http status code

Disassembly:
push 0xffffffffffffffff
push 0x4d2bd2
mov eax, dword fs:[0]
push eax
sub esp, 0x52c
mov eax, dword [0x517490]
xor eax, esp
mov dword [esp + 0x528], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x517490]
xor eax, esp
push eax
lea eax, [esp + 0x540]
mov dword fs:[0], eax
mov ebp, ecx
xor ebx, ebx
lea ecx, [esp + 0x84]
mov byte [esp + 0x16], bl
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xc4], ebx
call fcn.0042765e
mov dword [esp + 0x548], ebx
call fcn.004042b3
dec eax
neg eax
push ebx
sbb al, al
inc al
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x70]
sub eax, 0xb
je 0x429992
sub eax, 0xa
je 0x429960
dec eax
je 0x42992e
push 0x6ba85468
push 0x1708362b
push 0xc714b5ea
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
push ebx
push 0x9777b7c8
push 0xebd7d59b
push 0x3bcb5672
jmp 0x4299c2
push 0x59e4c1d2
push 0x2544a399
push 0xf55820c0
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
push ebx
push 0xe939a088
push 0x9599c2db
push 0x458541a2
jmp 0x4299c2
push 0x6735123a
push 0x1b957074
push 0xcb89f305
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
push ebx
push 0x7e90f76a
push 0x2309534
push 0xd22c16ab
jmp 0x4299c2
push 0x23526e6
push 0x7e954490
push 0xae89c705
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
push ebx
push 0x99eb4007
push 0xe54b2259
push 0x3557a192
mov esi, eax
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
mov dword [esp + 0x28], eax
test esi, esi
jne 0x4299e9
mov dword [ebp + 0x74], 1
jmp 0x42aab0
mov ecx, dword [ebp + 0x5c]
lea eax, [esp + 0x34]
push eax
push esi
call fcn.00446cc9
mov ebx, eax
mov dword [esp + 0x30], ebx
test ebx, ebx
je 0x42aaa7
cmp dword [esp + 0x34], 0
je 0x42aaa7
lea esi, [ebp + 0x208]
push esi
push dword [esp + 0x38]
push ebx
call fcn.004720e5
push ebx
call fcn.004063e3
mov edx, eax
add esp, 0x10
mov eax, 0x100
movzx ecx, byte [edx + ebx]
imul cx, ax
movzx eax, byte [edx + ebx + 1]
add cx, ax
movzx eax, cx
lea ecx, [esp + 0x44]
mov dword [esp + 0x3c], eax
lea eax, [edx + 0x30]
add eax, ebx
xor ebx, ebx
inc ebx
mov dword [esp + 0x1c], eax
push ebx
call fcn.00439fbc
lea eax, [esp + 0x44]
mov byte [esp + 0x548], bl
push eax
mov ecx, ebp
call fcn.0042aafa
test al, al
je 0x42aa6f
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
mov dword [ebp + 0x1a8], ecx
mov dword [ebp + 0x1ac], eax
push 0x17
pop edi
cmp ecx, 0x48141003
jne 0x429abb
push 0x700490b4
push 0xca4f2e8
push 0xdcb87109
call fcn.00401bb2
push eax
push ebx
push dword [ebp + 0x60]
call fcn.0041ffc2
mov dword [ebp + 0x70], edi
jmp 0x429af2
cmp ecx, 0x48151003
jne 0x429ad4
push 0x1e9745de
push 0x62372782
push 0xb22ba47f
jmp 0x429aa7
push 0x9366021
push 0x7596027d
push 0xa58a8274
call fcn.00401bb2
push eax
push ebx
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
push dword [ebp + 0x1ac]
push 0xd3727daa
push 0xafd21ff5
push 0x7fce9ff0
call fcn.00401bb2
add esp, 0xc
push eax
push ebx
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x10
cmp dword [esp + 0x4c], 0x48151003
jne 0x429b47
mov dword [ebp + 0x74], 6
mov al, byte [ebp + 0x26]
mov byte [ebp + 0x78], al
mov al, byte [ebp + 0x30]
mov byte [ebp + 0x79], al
mov al, byte [ebp + 0x31]
mov byte [ebp + 0x7a], al
jmp 0x42aa91
push 0x240
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
mov edx, 0x100
push 5
pop ecx
push 5
lea eax, [ebx + 0x58]
mov dword [esp + 0x30], ebx
mov edi, eax
mov dword [esp + 0x28], eax
rep movsd dword es:[edi], dword [esi]
movzx ecx, byte [ebp + 0x7f]
lea edi, [ebx + 0x18]
shl ecx, 8
xor ecx, dword [ebx + 8]
and ecx, edx
mov esi, dword [esp + 0x20]
xor ecx, dword [ebx + 8]
mov dword [ebx + 8], ecx
movzx eax, byte [ebp + 0x80]
shl eax, 9
xor eax, ecx
and eax, 0x200
xor eax, ecx
mov dword [ebx + 8], eax
mov eax, dword [ebp + 0x90]
mov dword [ebx + 0x74], eax
mov al, byte [ebp + 0x70]
mov byte [ebx + 0x3f], al
mov eax, dword [esp + 0x40]
mov word [ebx + 0x14], ax
mov eax, dword [esp + 0x50]
mov dword [ebx + 0x10], eax
mov eax, dword [esp + 0x54]
mov dword [ebx + 0x40], eax
mov eax, dword [ebp + 0x1b0]
mov dword [ebx + 0x44], eax
mov eax, dword [ebp + 0x1b8]
mov dword [ebx + 0x48], eax
mov eax, dword [ebp + 0x1bc]
mov dword [ebx + 0x4c], eax
mov eax, dword [ebp + 0x1c0]
mov dword [ebx + 0x50], eax
mov eax, dword [ebp + 0x1c4]
mov dword [ebx + 0x54], eax
mov eax, dword [ebp + 0x5c]
pop ecx
push 8
mov eax, dword [eax + 0x154]
mov dword [ebx + 0x6c], eax
mov eax, dword [ebp + 0x5c]
mov ax, word [eax + 0x152]
mov word [ebx + 0x70], ax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x248]
lea esi, [ebp + 0x251]
mov dword [ebx + 0xf0], eax
lea edi, [ebx + 0xf8]
mov eax, dword [ebp + 0x24c]
mov dword [ebx + 0xf4], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x262]
lea esi, [ebp + 0x267]
mov dword [ebx + 0x108], eax
lea edi, [ebx + 0x10c]
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp + 0x27c]
lea edi, [ebx + 0x120]
pop ecx
rep movsd dword es:[edi], dword [esi]
lea eax, [ebx + 0x140]
xor ecx, ecx
push ecx
push ecx
push edx
push eax
push 0xffffffffffffffff
lea eax, [ebp + 0x94]
push eax
push ecx
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jle 0x429c93
dec al
mov byte [ebx + 0x73], al
mov esi, dword [esp + 0x64]
test esi, esi
je 0x429ca5
lea edi, [ebx + 0xe0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0
push 0x471565c6
push 0x3bb50799
push 0xeba987a2
call fcn.00401bb2
mov ecx, dword [ebp + 0x5c]
add esp, 0xc
push eax
call fcn.0044545d
xor ecx, ecx
test eax, eax
je 0x429cd8
cmp dword [eax], ecx
je 0x429cd8
or dword [ebx + 8], 0x400
cmp dword [ebp + 0x70], 0x16
mov ebx, dword [esp + 0x18]
mov byte [esp + 0x40], cl
mov dword [esp + 0x38], ecx
je 0x429dac
cmp dword [ebp + 0x70], 0xb
je 0x429dac
test bl, bl
je 0x429d65
push ecx
call fcn.0042d0ec
mov esi, dword [esp + 0x28]
mov dword [esp + 0x3c], eax
pop ecx
test eax, eax
je 0x429d6b
lea ecx, [esp + 0x84]
push ecx
push esi
push eax
call fcn.0042cf73
add esp, 0xc
mov byte [esp + 0x40], al
test al, al
je 0x429d6b
cmp byte [esp + 0x8b], 0
jne 0x429d48
mov eax, dword [esp + 0xc0]
sub eax, dword [esp + 0xbc]
sar eax, 4
test eax, eax
je 0x429d6b
push dword [ebp + 0x60]
xor edi, edi
lea ecx, [esp + 0x88]
inc edi
mov dword [esp + 0x88], edi
call fcn.0042c0f3
xor ecx, ecx
jmp 0x429d70
mov esi, dword [esp + 0x24]
jmp 0x429d6d
xor ecx, ecx
xor edi, edi
inc edi
cmp dword [esp + 0x84], 0
jne 0x429daf
push ecx
lea eax, [esp + 0x88]
push eax
push esi
push ecx
mov ecx, ebp
call fcn.00427c29
test al, al
je 0x429daf
push dword [ebp + 0x60]
lea ecx, [esp + 0x88]
mov dword [esp + 0x88], 2
call fcn.0042c0f3
jmp 0x429daf
xor edi, edi
inc edi
mov ecx, ebp
call fcn.00427a87
mov byte [ebp + 0x84], al
test al, al
jne 0x429de8
cmp dword [ebp + 0x70], 0x17
je 0x429de8
push 0xbf024d76
push 0xc3a22f01
push 0x13beaf36
call fcn.00401bb2
push eax
push 2
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
cmp byte [0x523f04], 0
jne 0x429e21
cmp dword [ebp + 0x70], 0x17
je 0x429e21
test bl, bl
je 0x429e21
push 0x5242c8
call fcn.0043b69d
mov byte [0x523f04], al
and dword [ebp + 0x74], 0
mov al, byte [ebp + 0x26]
mov byte [ebp + 0x78], al
mov al, byte [ebp + 0x30]
mov byte [ebp + 0x79], al
mov al, byte [ebp + 0x31]
pop ecx
mov byte [ebp + 0x7a], al
mov ecx, ebp
call fcn.00427a2e
xor ebx, ebx
mov byte [esp + 0x17], al
test al, al
setne bl
push ebx
push 0x64a52f5e
push 0x18054d00
push 0xc819cd6b
call fcn.00401bb2
add esp, 0xc
push eax
push edi
push dword [ebp + 0x60]
call fcn.0041ffc2
mov eax, dword [esp + 0x3c]
xor ecx, ecx
add esp, 0x10
cmp byte [ebp + 0x83], cl
setne cl
shl ebx, 0xb
shl ecx, 0xc
xor ecx, dword [eax + 8]
and ecx, 0x1000
xor ecx, dword [eax + 8]
xor ebx, ecx
and ebx, 0x800
xor ecx, ebx
mov ebx, eax
mov dword [ebx + 8], ecx
movzx eax, byte [ebp + 0x82]
shl eax, 0xd
xor eax, ecx
and eax, 0x2000
xor eax, ecx
mov dword [ebx + 8], eax
cmp byte [ebp + 0x82], 0
jne 0x429ed8
cmp byte [esp + 0x17], 0
je 0x429ed8
cmp byte [ebp + 0x83], 0
je 0x429ed8
lea eax, [ebp + 0x1dc]
mov ecx, ebp
push eax
push 0
call fcn.00427016
test al, al
je 0x42a97e
xor eax, eax
inc eax
mov byte [ebp + 0x81], al
cmp byte [ebp + 0x81], 0
je 0x429ef2
push 0x50028334
push 0x2ca2e161
push 0xfcbe611e
jmp 0x429f01
push 0x31e2610c
push 0x4d42035e
push 0x9d5e832f
call fcn.00401bb2
add esp, 0xc
push eax
push 0xb5bfd905
push 0xc91fbb5b
push 0x19033b3a
call fcn.00401bb2
add esp, 0xc
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x60]
call fcn.0041ffc2
lea eax, [esp + 0x254]
push eax
call fcn.004738c1
push 2
lea eax, [esp + 0x38]
mov word [esp + 0x38], 0xbbaa
push eax
lea eax, [esp + 0x260]
push eax
call fcn.004738e9
push dword [esp + 0x54]
mov esi, dword [esp + 0x54]
lea eax, [esp + 0x268]
push esi
push eax
call fcn.004738e9
add esp, 0x2c
lea eax, [esp + 0x244]
mov ecx, ebp
push ebx
push eax
call fcn.0042817e
push 0x14
lea ecx, [ebx + 0x58]
mov edi, eax
push ecx
push 0xa66b5aa7
push 0xdacb38f8
push 0xad7b873
mov dword [esp + 0x38], edi
call fcn.00401bb2
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push eax
xor eax, eax
inc eax
push eax
call fcn.00420135
cmp byte [ebp + 0x7f], 0
je 0x429fbd
push ebx
mov ecx, ebp
call fcn.00428b24
xor eax, eax
inc eax
cmp byte [esp + 0x8b], 0
mov byte [esp + 0x17], al
je 0x42a026
push esi
lea eax, [esp + 0xb0]
mov ecx, ebp
push eax
call fcn.004284af
test al, al
jne 0x42a693
mov dword [ebp + 0x74], 0x1b
mov al, byte [ebp + 0x26]
mov byte [ebp + 0x78], al
mov al, byte [ebp + 0x30]
push 0x1c914984
mov byte [ebp + 0x79], al
mov al, byte [ebp + 0x31]
push 0x60312bca
push 0xb02dab57
mov byte [ebp + 0x7a], al
call fcn.00401bb2
push eax
push 3
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
jmp 0x42a97b
mov eax, dword [esp + 0xc0]
sub eax, dword [esp + 0xbc]
sar eax, 4
test eax, eax
jne 0x42a645
cmp dword [ebp + 0x70], 0x17
jne 0x42a074
cmp byte [esp + 0x18], al
je 0x42a074
push edi
mov ecx, ebp
call fcn.00427fca
test al, al
je 0x42a074
xor eax, eax
mov dword [esp + 0x84], 4
inc eax
xor ecx, ecx
mov byte [esp + 0x16], al
mov byte [esp + 0x17], cl
jmp 0x42a6aa
mov dl, byte [esp + 0x89]
test dl, dl
jne 0x42a0ad
lea eax, [esp + 0x44]
mov ecx, ebp
push eax
push ebx
lea eax, [esp + 0x94]
push eax
call fcn.00428748
movzx edx, byte [esp + 0x89]
test al, al
push 1
pop eax
cmovne edx, eax
mov byte [esp + 0x89], dl
jmp 0x42a0b0
xor eax, eax
inc eax
cmp dword [ebp + 0x70], 0xb
movzx ecx, byte [esp + 0x8a]
cmove ecx, eax
mov byte [esp + 0x8a], cl
test cl, cl
jne 0x42a0fb
lea eax, [esp + 0x9c]
mov ecx, ebp
push eax
xor eax, eax
inc eax
push eax
call fcn.00427016
movzx ecx, byte [esp + 0x8a]
test al, al
mov dl, byte [esp + 0x89]
push 1
pop eax
cmovne ecx, eax
mov byte [esp + 0x8a], cl
test dl, dl
je 0x42a13d
test cl, cl
je 0x42a13d
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0xa0]
push eax
lea eax, [esp + 0x94]
push eax
call fcn.0042c232
xor eax, eax
mov dword [esp + 0x90], 3
add esp, 0xc
inc eax
mov byte [esp + 0x8b], al
jmp 0x42a4ef
cmp byte [esp + 0x18], 0
je 0x42a406
mov eax, dword [0x529a98]
test dword [eax + 0x14], 0x2000000
je 0x42a3e8
push 0x17b
lea eax, [esp + 0xcd]
push 0
push eax
call fcn.004bea90
xor eax, eax
mov byte [esp + 0xd7], 0xef
inc eax
add esp, 0xc
mov byte [esp + 0xc8], al
mov al, byte [ebp + 0x70]
mov byte [esp + 0xc9], al
mov al, byte [ebx + 0x73]
mov byte [esp + 0xca], al
call fcn.0040a8a0
mov esi, dword [esp + 0x1c]
lea edi, [esp + 0xe0]
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xcc], eax
mov eax, dword [ebp + 0x1ac]
mov dword [esp + 0xd0], eax
mov eax, dword [ebp + 0x5c]
mov dword [esp + 0x110], edx
push 5
pop ecx
mov eax, dword [eax + 0x154]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x3c]
mov word [esp + 0xdc], ax
mov eax, dword [ebx + 0xac]
mov dword [esp + 0xd8], 0xa6f
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebx + 0x58]
lea edi, [esp + 0xf0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x64]
lea esi, [esp + 0x9c]
mov dword [esp + 0x104], eax
lea edi, [esp + 0x114]
mov eax, dword [ebx + 0xb0]
mov dword [esp + 0x108], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
test ecx, ecx
je 0x42a296
mov esi, 0x80000
test dword [ebx + 8], esi
jne 0x42a26e
lea eax, [ebx + 0xd0]
push eax
lea ecx, [esp + 0x48]
call fcn.0043a01d
xor ecx, ecx
mov byte [ebx + 0xb], al
cmp al, 0xff
setne cl
shl ecx, 0x13
xor ecx, dword [ebx + 8]
and ecx, esi
xor dword [ebx + 8], ecx
mov ecx, dword [esp + 0x64]
mov al, byte [ebx + 0xb]
lea esi, [ebx + 0xd0]
mov byte [esp + 0xde], al
lea edi, [esp + 0x124]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, ecx
lea edi, [esp + 0x134]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movzx eax, byte [esp + 0xca]
push eax
lea eax, [ebx + 0x140]
push eax
lea eax, [esp + 0x14c]
push eax
call fcn.004be440
xor eax, eax
push 0x28c
push eax
mov dword [esp + 0x2c0], eax
lea eax, [esp + 0x2c4]
push eax
call fcn.004bea90
lea eax, [esp + 0x2c4]
push eax
movzx eax, byte [esp + 0xe6]
add eax, 0x7c
push eax
lea eax, [esp + 0xe8]
push eax
call fcn.0043b1c2
add esp, 0x24
cmp eax, 0xc8
jne 0x42a3db
cmp dword [esp + 0x2ac], 0x12bfbbef
jne 0x42a3bf
mov eax, dword [esp + 0x2b4]
xor ecx, ecx
inc ecx
test cl, al
je 0x42a33f
lea esi, [esp + 0x2bc]
lea edi, [esp + 0xac]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x84], 4
jmp 0x42a4e8
shr eax, 0x10
test eax, eax
je 0x42a97b
mov word [ebp + 0x1ec], ax
shl eax, 4
push eax
call fcn.00404d58
pop ecx
lea ecx, [esp + 0x2ac]
mov dword [ebp + 0x1d8], eax
call fcn.00428e93
mov dword [esp + 0x1c], eax
xor ecx, ecx
xor eax, eax
mov edx, ecx
cmp ax, word [ebp + 0x1ec]
jae 0x42a3a8
mov ebx, dword [esp + 0x1c]
mov edi, dword [ebp + 0x1d8]
lea esi, [ebx + ecx]
add edi, ecx
inc edx
add ecx, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movzx eax, word [ebp + 0x1ec]
cmp edx, eax
jb 0x42a384
mov ebx, dword [esp + 0x2c]
xor ecx, ecx
mov dword [esp + 0x84], 4
xor eax, eax
inc eax
mov byte [esp + 0x16], al
jmp 0x42a6aa
push 0xc1ee503d
push 0xbd4e3272
push 0x6d52b2c9
call fcn.00401bb2
push eax
push 2
jmp 0x42a016
push eax
mov ecx, ebp
call fcn.00434445
jmp 0x42a97b
push 0x6c0aef48
push 0x10aa8d01
push 0xc0b60dc6
call fcn.00401bb2
push eax
xor eax, eax
inc eax
push eax
jmp 0x42a016
movzx eax, byte [ebp + 0x6a]
push eax
push 0x66
push 0x2800
push dword [0x529aa0]
call dword [sym.imp.USER32.dll_SendMessageW]
xor edi, edi
inc edi
cmp eax, edi
jne 0x42a97e
push ebx
lea ecx, [esp + 0x88]
call fcn.004275b7
cmp dword [esp + 0x64], 0
je 0x42a466
lea eax, [ebx + 0xd0]
push eax
lea ecx, [esp + 0x48]
call fcn.0043a01d
xor ecx, ecx
mov byte [ebx + 0xb], al
cmp al, 0xff
setne cl
shl ecx, 0x13
xor ecx, dword [ebx + 8]
and ecx, 0x80000
xor dword [ebx + 8], ecx
or dword [ebx + 8], 0x200000
xor eax, eax
push 0x28c
push eax
mov dword [esp + 0x2b4], eax
lea eax, [esp + 0x2b8]
push eax
call fcn.004bea90
lea eax, [esp + 0x2b8]
push eax
push ebx
call fcn.0043b2c3
and dword [ebx + 8], 0xffdfffff
add esp, 0x14
cmp eax, 0xc8
jne 0x42a5be
cmp dword [esp + 0x2ac], 0x7302ac85
jne 0x42a5a5
mov eax, dword [esp + 0x2b4]
xor ecx, ecx
inc ecx
test cl, al
je 0x42a52c
lea esi, [esp + 0x2bc]
lea edi, [esp + 0xac]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x84], 5
mov byte [esp + 0x8b], cl
push dword [esp + 0x30]
lea eax, [esp + 0xb0]
mov ecx, ebp
push eax
call fcn.004284af
mov byte [esp + 0x16], al
test al, al
jne 0x42a69a
mov dword [ebp + 0x74], 0x1b
mov cl, byte [ebp + 0x26]
mov byte [ebp + 0x78], cl
mov cl, byte [ebp + 0x30]
mov byte [ebp + 0x79], cl
mov cl, byte [ebp + 0x31]
mov byte [ebp + 0x7a], cl
jmp 0x42a97b
shr eax, 0x10
test eax, eax
je 0x42a97b
mov word [ebp + 0x1ec], ax
shl eax, 4
push eax
call fcn.00404d58
pop ecx
lea ecx, [esp + 0x2ac]
mov dword [ebp + 0x1d8], eax
call fcn.00428ebe
mov dword [esp + 0x1c], eax
xor ecx, ecx
xor eax, eax
mov edx, ecx
cmp ax, word [ebp + 0x1ec]
jae 0x42a595
mov ebx, dword [esp + 0x1c]
mov edi, dword [ebp + 0x1d8]
lea esi, [ebx + ecx]
add edi, ecx
inc edx
add ecx, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movzx eax, word [ebp + 0x1ec]
cmp edx, eax
jb 0x42a571
mov ebx, dword [esp + 0x2c]
xor ecx, ecx
mov dword [esp + 0x84], 5
jmp 0x42a3b3
push 0x4a5fc3d6
push 0x36ffa199
push 0xe6e3217c
call fcn.00401bb2
push eax
push 2
jmp 0x42a635
cmp eax, 0x1d7
jne 0x42a5d6
push 0xe70f0ef9
push 0x9baf6cbd
push 0x4bb3edbc
jmp 0x42a62d
cmp eax, 0x1d6
jne 0x42a5ee
push 0x3fa7ae
push 0x7c9fc5e2
push 0xac8344f7
jmp 0x42a62d
cmp eax, 0x1d8
jne 0x42a606
push 0x80627d91
push 0xfcc21fe0
push 0x2cde9ed1
jmp 0x42a62d
cmp eax, 0x1d9
jne 0x42a61e
push 0x1c6293a8
push 0x60c2f1f0
push 0xb0de709f
jmp 0x42a62d
push 0x9220666b
push 0xee800427
push 0x3e9c8558
call fcn.00401bb2
push eax
push 3
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
jmp 0x42a97e
movzx eax, ax
mov word [ebp + 0x1ec], ax
shl eax, 4
push eax
call fcn.00404d58
pop ecx
mov dword [ebp + 0x1d8], eax
xor ecx, ecx
xor eax, eax
mov edx, ecx
cmp ax, word [ebp + 0x1ec]
jae 0x42a693
mov esi, dword [esp + 0xbc]
mov edi, dword [ebp + 0x1d8]
add edi, ecx
inc edx
lea esi, [esi + ecx]
add ecx, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movzx eax, word [ebp + 0x1ec]
cmp edx, eax
jb 0x42a66e
xor eax, eax
inc eax
mov byte [esp + 0x16], al
cmp dword [esp + 0x84], 2
je 0x42a78e
xor ecx, ecx
cmp dword [ebp + 0x70], 0x16
je 0x42a78e
cmp dword [ebp + 0x70], 0xb
je 0x42a78e
cmp byte [esp + 0x18], 0
je 0x42a830
cmp byte [esp + 0x89], 0
je 0x42a70b
push ecx
push ecx
lea eax, [esp + 0x94]
push eax
call fcn.0042b405
add esp, 0xc
push eax
push 0xd8e616c1
push 0xa446749f
push 0x745af53c
call fcn.00401bb2
add esp, 0xc
push eax
push 5
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x10
cmp byte [esp + 0x8a], 0
je 0x42a741
push 0x10
lea eax, [esp + 0xa0]
push eax
push 0x1972aff5
push 0x65d2cda5
push 0xb5ce4c1c
call fcn.00401bb2
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push eax
push 5
call fcn.00420135
cmp byte [esp + 0x8b], 0
je 0x42a830
xor eax, eax
push eax
push eax
lea eax, [esp + 0xb4]
push eax
call fcn.0042b405
add esp, 0xc
push eax
push 0xbf285123
push 0xc388337d
push 0x1394b2cc
call fcn.00401bb2
add esp, 0xc
push eax
push 5
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x10
jmp 0x42a830
cmp byte [esp + 0x89], 0
je 0x42a7c4
push 0x10
lea eax, [esp + 0x90]
push eax
push 0xfc5cddf
push 0x7365af8f
push 0xa3792e14
call fcn.00401bb2
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push eax
push 5
call fcn.00420135
cmp byte [esp + 0x8a], 0
je 0x42a7fa
push 0x10
lea eax, [esp + 0xa0]
push eax
push 0x9c2e4f16
push 0xe08e2d46
push 0x3092acd5
call fcn.00401bb2
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push eax
push 5
call fcn.00420135
cmp byte [esp + 0x8b], 0
je 0x42a830
push 0x10
lea eax, [esp + 0xb0]
push eax
push 0x81f4ccaf
push 0xfd54aeff
push 0x2d482f54
call fcn.00401bb2
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push eax
push 5
call fcn.00420135
push ebx
lea ecx, [esp + 0x88]
call fcn.004275b7
lea eax, [esp + 0x44]
mov ecx, ebp
push eax
push ebx
call fcn.00428ed8
test al, al
jne 0x42a857
mov byte [esp + 0x16], al
jmp 0x42a97b
push 0x2a2331e8
push 0x568353bf
push 0x869fd270
call fcn.00401bb2
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x60]
call fcn.0041ffc2
mov eax, dword [esp + 0x9c]
add esp, 0x18
dec eax
je 0x42a8d5
dec eax
je 0x42a8c4
dec eax
je 0x42a8b3
dec eax
je 0x42a8a2
dec eax
jne 0x42a8f9
push 0x20ea7dc2
push 0x5c4a1fbe
push 0x8c5691f3
jmp 0x42a8e4
push 0x42d73e1a
push 0x3e775c6e
push 0xee6bd247
jmp 0x42a8e4
push 0xb62c8846
push 0xca8cea0c
push 0x1a906403
jmp 0x42a8e4
push 0x657ee292
push 0x19de80d8
push 0xc9c20135
jmp 0x42a8e4
push 0x28bf1979
push 0x541f7b34
push 0x8403faf7
call fcn.00401bb2
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
mov esi, 0x100000
or dword [ebx + 8], esi
cmp byte [esp + 0x17], 0
je 0x42a926
mov eax, dword [esp + 0x24]
test eax, eax
je 0x42a926
push eax
mov ecx, ebp
call fcn.0042bdfc
movzx eax, al
shl eax, 0x14
xor eax, dword [ebx + 8]
and eax, esi
xor dword [ebx + 8], eax
push 0xe1d52780
push 0x9d7545cf
push 0x4d69cbb6
call fcn.00401bb2
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
cmp dword [ebp + 0x228], 0
je 0x42a977
push 0x6ca87bb3
push 0x100819fd
push 0xc0149778
call fcn.00401bb2
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
and dword [ebx + 0xc], 0
xor edi, edi
inc edi
push dword [esp + 0x30]
call fcn.00404d44
cmp byte [esp + 0x1a], 0
pop ecx
je 0x42a9a3
test dword [ebx + 8], 0x20000
je 0x42a9a3
lea eax, [ebx + 0x7c]
mov ecx, ebp
push eax
call fcn.0042bd6e
xor ecx, ecx
cmp dword [ebp + 0x74], ecx
jne 0x42a9d0
cmp word [ebp + 0x1ec], cx
jne 0x42a9d0
mov dword [ebp + 0x74], 0x1a
mov al, byte [ebp + 0x26]
mov byte [ebp + 0x78], al
mov al, byte [ebp + 0x30]
mov byte [ebp + 0x79], al
mov al, byte [ebp + 0x31]
mov byte [ebp + 0x7a], al
mov byte [esp + 0x16], cl
mov ecx, ebp
call fcn.004251e6
mov esi, dword [esp + 0x38]
mov dword [ebx + 0xc], eax
test esi, esi
je 0x42a9f7
push dword [esp + 0x40]
push ebp
push ebx
push esi
call fcn.0042d227
push esi
call fcn.00478746
add esp, 0x14
mov eax, dword [0x529a98]
test dword [eax + 0x14], 0x8000000
je 0x42aa3c
cmp byte [esp + 0x16], 0
jne 0x42aa3c
mov eax, dword [ebp + 0x74]
test eax, eax
jle 0x42aa33
cmp eax, 2
jle 0x42aa3c
cmp eax, 0x1a
je 0x42aa3c
cmp eax, 0x20
je 0x42aa3c
add eax, 0xffffffdf
cmp eax, edi
ja 0x42aa33
cmp dword [esp + 0x84], 5
je 0x42aa3c
push ebx
call fcn.0043ac68
pop ecx
jmp 0x42aa53
push 0x240
xor eax, eax
push eax
push ebx
call fcn.004bea90
push ebx
call fcn.00404d44
add esp, 0x10
lea ecx, [esp + 0x84]
call fcn.0042765e
xor esi, esi
cmp byte [esp + 0x16], 0
cmovne esi, dword [esp + 0x28]
xor eax, eax
jmp 0x42aa95
push 0x285614c9
push 0x54f6768c
push 0x84eaf69d
call fcn.00401bb2
push eax
push 2
push dword [ebp + 0x60]
call fcn.0041ffc2
add esp, 0x18
xor eax, eax
mov esi, eax
lea ecx, [esp + 0x44]
mov byte [esp + 0x548], al
call fcn.00439fd8
jmp 0x42aac4
mov dword [ebp + 0x74], 0xd
xor ebx, ebx
mov al, byte [ebp + 0x26]
mov esi, ebx
mov byte [ebp + 0x78], al
mov al, byte [ebp + 0x30]
mov byte [ebp + 0x79], al
mov al, byte [ebp + 0x31]
mov byte [ebp + 0x7a], al
lea ecx, [esp + 0xbc]
call fcn.0040a7be
mov eax, esi
mov ecx, dword [esp + 0x540]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x528]
xor ecx, esp
call fcn.004b94b6
add esp, 0x538
ret